Update tests to work even if some features of the library are disabled. (CVS 2050)

FossilOrigin-Name: b11fc9b3f3a2711f98e7e45724aa1d30081197f3
diff --git a/test/tclsqlite.test b/test/tclsqlite.test
index 40d23c3..9272f8d 100644
--- a/test/tclsqlite.test
+++ b/test/tclsqlite.test
@@ -15,7 +15,7 @@
 # interface is pretty well tested.  This file contains some addition
 # tests for fringe issues that the main test suite does not cover.
 #
-# $Id: tclsqlite.test,v 1.32 2004/09/13 13:46:01 drh Exp $
+# $Id: tclsqlite.test,v 1.33 2004/11/03 16:27:02 drh Exp $
 
 set testdir [file dirname $argv0]
 source $testdir/tester.tcl
@@ -170,24 +170,29 @@
   set rc [catch {db onecolumn {SELECT bogus}} errmsg]
   lappend rc $errmsg
 } {1 {no such column: bogus}}
-do_test tcl-3.5 {
-  set b 50
-  set rc [catch {db one {SELECT * FROM t1 WHERE b>$b}} msg]
-  lappend rc $msg
-} {0 41}
-do_test tcl-3.6 {
-  set b 500
-  set rc [catch {db one {SELECT * FROM t1 WHERE b>$b}} msg]
-  lappend rc $msg
-} {0 {}}
-do_test tcl-3.7 {
-  set b 500
-  set rc [catch {db one {
-    INSERT INTO t1 VALUES(99,510);
-    SELECT * FROM t1 WHERE b>$b
-  }} msg]
-  lappend rc $msg
-} {0 99}
+ifcapable {tclvar} {
+  do_test tcl-3.5 {
+    set b 50
+    set rc [catch {db one {SELECT * FROM t1 WHERE b>$b}} msg]
+    lappend rc $msg
+  } {0 41}
+  do_test tcl-3.6 {
+    set b 500
+    set rc [catch {db one {SELECT * FROM t1 WHERE b>$b}} msg]
+    lappend rc $msg
+  } {0 {}}
+  do_test tcl-3.7 {
+    set b 500
+    set rc [catch {db one {
+      INSERT INTO t1 VALUES(99,510);
+      SELECT * FROM t1 WHERE b>$b
+    }} msg]
+    lappend rc $msg
+  } {0 99}
+}
+ifcapable {!tclvar} {
+   execsql {INSERT INTO t1 VALUES(99,510)}
+}
 
 # Turn the busy handler on and off
 #
@@ -203,40 +208,42 @@
   db busy
 } {}
 
-# Parsing of TCL variable names within SQL into bound parameters.
-#
-do_test tcl-5.1 {
-  execsql {CREATE TABLE t3(a,b,c)}
-  catch {unset x}
-  set x(1) 5
-  set x(2) 7
-  execsql {
-    INSERT INTO t3 VALUES($::x(1),$::x(2),$::x(3));
-    SELECT * FROM t3
-  }
-} {5 7 {}}
-do_test tcl-5.2 {
-  execsql {
-    SELECT typeof(a), typeof(b), typeof(c) FROM t3
-  }
-} {text text null}
-do_test tcl-5.3 {
-  catch {unset x}
-  set x [binary format h12 686900686f00]
-  execsql {
-    UPDATE t3 SET a=$::x;
-  }
-  db eval {
-    SELECT a FROM t3
-  } break
-  binary scan $a h12 adata
-  set adata
-} {686900686f00}
-do_test tcl-5.4 {
-  execsql {
-    SELECT typeof(a), typeof(b), typeof(c) FROM t3
-  }
-} {blob text null}
+ifcapable {tclvar} {
+  # Parsing of TCL variable names within SQL into bound parameters.
+  #
+  do_test tcl-5.1 {
+    execsql {CREATE TABLE t3(a,b,c)}
+    catch {unset x}
+    set x(1) 5
+    set x(2) 7
+    execsql {
+      INSERT INTO t3 VALUES($::x(1),$::x(2),$::x(3));
+      SELECT * FROM t3
+    }
+  } {5 7 {}}
+  do_test tcl-5.2 {
+    execsql {
+      SELECT typeof(a), typeof(b), typeof(c) FROM t3
+    }
+  } {text text null}
+  do_test tcl-5.3 {
+    catch {unset x}
+    set x [binary format h12 686900686f00]
+    execsql {
+      UPDATE t3 SET a=$::x;
+    }
+    db eval {
+      SELECT a FROM t3
+    } break
+    binary scan $a h12 adata
+    set adata
+  } {686900686f00}
+  do_test tcl-5.4 {
+    execsql {
+      SELECT typeof(a), typeof(b), typeof(c) FROM t3
+    }
+  } {blob text null}
+}
 
 # Operation of "break" and "continue" within row scripts
 #