diff --git a/testing/all.test b/testing/all.test index 75f28a809..ccde0c24b 100755 --- a/testing/all.test +++ b/testing/all.test @@ -1,29 +1,7 @@ #!/usr/bin/env tclsh -set sqlite_exec [expr {[info exists env(SQLITE_EXEC)] ? $env(SQLITE_EXEC) : "sqlite3"}] - -proc evaluate_sql {sqlite_exec sql} { - set command [list $sqlite_exec testing/testing.db $sql] - set output [exec {*}$command] - return $output -} - -proc run_test {sqlite_exec sql expected_output} { - set actual_output [evaluate_sql $sqlite_exec $sql] - if {$actual_output ne $expected_output} { - puts "Test FAILED: '$sql'" - puts "returned '$actual_output'" - puts "expected '$expected_output'" - exit 1 - } -} - -proc do_execsql_test {test_name sql_statements expected_outputs} { - puts "Running test: $test_name" - set combined_sql [join $sql_statements " "] - set combined_expected_output [join $expected_outputs "\n"] - run_test $::sqlite_exec $combined_sql $combined_expected_output -} +set testdir [file dirname $argv0] +source $testdir/tester.tcl do_execsql_test select-const-1 { SELECT 1 diff --git a/testing/tester.tcl b/testing/tester.tcl new file mode 100644 index 000000000..e757d4a6e --- /dev/null +++ b/testing/tester.tcl @@ -0,0 +1,24 @@ +set sqlite_exec [expr {[info exists env(SQLITE_EXEC)] ? $env(SQLITE_EXEC) : "sqlite3"}] + +proc evaluate_sql {sqlite_exec sql} { + set command [list $sqlite_exec testing/testing.db $sql] + set output [exec {*}$command] + return $output +} + +proc run_test {sqlite_exec sql expected_output} { + set actual_output [evaluate_sql $sqlite_exec $sql] + if {$actual_output ne $expected_output} { + puts "Test FAILED: '$sql'" + puts "returned '$actual_output'" + puts "expected '$expected_output'" + exit 1 + } +} + +proc do_execsql_test {test_name sql_statements expected_outputs} { + puts "Running test: $test_name" + set combined_sql [join $sql_statements " "] + set combined_expected_output [join $expected_outputs "\n"] + run_test $::sqlite_exec $combined_sql $combined_expected_output +}