SQLite

Check-in [8213c2f581]
Login

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Overview
Comment:More changes to the shellN.test scripts to get them working on all variations of Windows.
Downloads: Tarball | ZIP archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA1: 8213c2f58167243411d29cc58e303b4be656f756
User & Date: drh 2016-03-26 15:36:36.768
Context
2016-03-28
11:01
Fix the multiplexor so that it does not assume that the xGetLastError method is non-NULL in the child VFS. (check-in: f6a88cccbc user: drh tags: trunk)
2016-03-26
20:11
Fix a problem with OOM handling when setting an fts5 configuration option. (check-in: 53b80a6d05 user: dan tags: fts5)
15:36
More changes to the shellN.test scripts to get them working on all variations of Windows. (check-in: 8213c2f581 user: drh tags: trunk)
14:41
Remove the catchcmd_collapse_space procedure in tester.tcl - no longer needed. (check-in: 3bd499d3bd user: drh tags: trunk)
Changes
Unified Diff Ignore Whitespace Patch
Changes to test/shell1.test.
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
  set res [catchcmd "test.db -bad" ""]
  set rc [lindex $res 0]
  list $rc \
       [regexp {Error: unknown option: -bad} $res]
} {1 1}
# error on extra options
do_test shell1-1.1.2 {
  catchcmd "test.db \"select 3\" \"select 4\"" ""
} {0 {3
4}}
# error on extra options
do_test shell1-1.1.3 {
  catchcmd "test.db FOO test.db BAD" ".quit"
} {1 {Error: near "FOO": syntax error}}








|







41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
  set res [catchcmd "test.db -bad" ""]
  set rc [lindex $res 0]
  list $rc \
       [regexp {Error: unknown option: -bad} $res]
} {1 1}
# error on extra options
do_test shell1-1.1.2 {
  catchcmd "test.db \"select+3\" \"select+4\"" ""
} {0 {3
4}}
# error on extra options
do_test shell1-1.1.3 {
  catchcmd "test.db FOO test.db BAD" ".quit"
} {1 {Error: near "FOO": syntax error}}

Changes to test/shell2.test.
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
  set fexist [file exist foo.db]
  list $rc $fexist
} {{0 {}} 1}

# Shell silently ignores extra parameters.
# Ticket [f5cb008a65].
do_test shell2-1.2.1 {
  set rc [catch { eval exec $CLI \":memory:\" \"select 3\" \"select 4\" } msg]
  list $rc $msg
} {0 {3
4}}

# Test a problem reported on the mailing list. The shell was at one point
# returning the generic SQLITE_ERROR message ("SQL error or missing database")
# instead of the "too many levels..." message in the test below.







|







39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
  set fexist [file exist foo.db]
  list $rc $fexist
} {{0 {}} 1}

# Shell silently ignores extra parameters.
# Ticket [f5cb008a65].
do_test shell2-1.2.1 {
  set rc [catch { eval exec $CLI \":memory:\" \"select+3\" \"select+4\" } msg]
  list $rc $msg
} {0 {3
4}}

# Test a problem reported on the mailing list. The shell was at one point
# returning the generic SQLITE_ERROR message ("SQL error or missing database")
# instead of the "too many levels..." message in the test below.
Changes to test/shell3.test.
22
23
24
25
26
27
28
29
30

31




32
33
34
35
36
37
38
set testdir [file dirname $argv0]
source $testdir/tester.tcl
set CLI [test_find_cli]
db close
forcedelete test.db test.db-journal test.db-wal
sqlite3 db test.db

if {[info exists env(MSYSCON)] && $env(MSYSCON)=="sh.exe"} {
  puts "shell3 tests do not work with the mingw shell due to dodgy\

        command-line parsing"




  finish_test
  return
}

#----------------------------------------------------------------------------
#   shell3-1.*: Basic tests for running SQL statments from command line.
#







|
|
>
|
>
>
>
>







22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
set testdir [file dirname $argv0]
source $testdir/tester.tcl
set CLI [test_find_cli]
db close
forcedelete test.db test.db-journal test.db-wal
sqlite3 db test.db

# There are inconsistencies in command-line argument quoting on Windows.
# In particular, individual applications are responsible for command-line
# parsing in Windows, not the shell.  Depending on whether the sqlite3.exe
# program is compiled with MinGW or MSVC, the command-line parsing is
# different.  This causes problems for the tests below.  To avoid
# issues, these tests are disabled for windows.
#
if {$::tcl_platform(platform)=="windows"} {
  finish_test
  return
}

#----------------------------------------------------------------------------
#   shell3-1.*: Basic tests for running SQL statments from command line.
#