mirror of
https://github.com/sqlite/sqlite.git
synced 2025-08-05 15:55:57 +03:00
Fix the new shellA.test test script so that it works with Valgrind.
FossilOrigin-Name: c3949852cee320c2e02123b99c33155c459b10b2ac8e4fe80b1b7624c9ce0817
This commit is contained in:
12
manifest
12
manifest
@@ -1,5 +1,5 @@
|
|||||||
C Use\san\sassert()\sto\sfix\sa\sharmless\s(false-positive)\sscan-build\swarning\nin\sthe\sCLI.
|
C Fix\sthe\snew\sshellA.test\stest\sscript\sso\sthat\sit\sworks\swith\sValgrind.
|
||||||
D 2025-02-24T20:13:29.374
|
D 2025-02-24T23:34:50.874
|
||||||
F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1
|
F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1
|
||||||
F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea
|
F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea
|
||||||
F LICENSE.md e108e1e69ae8e8a59e93c455654b8ac9356a11720d3345df2a4743e9590fb20d
|
F LICENSE.md e108e1e69ae8e8a59e93c455654b8ac9356a11720d3345df2a4743e9590fb20d
|
||||||
@@ -1647,7 +1647,7 @@ F test/shell6.test e3b883b61d4916b6906678a35f9d19054861123ad91b856461e0a456273bd
|
|||||||
F test/shell7.test 43fd8e511c533bab5232e95c7b4be93b243451709e89582600d4b6e67693d5c3
|
F test/shell7.test 43fd8e511c533bab5232e95c7b4be93b243451709e89582600d4b6e67693d5c3
|
||||||
F test/shell8.test aea51ecbcd4494c746b096aeff51d841d04d5f0dc4b62eb42427f16109b87acd
|
F test/shell8.test aea51ecbcd4494c746b096aeff51d841d04d5f0dc4b62eb42427f16109b87acd
|
||||||
F test/shell9.test 8742a5b390cdcef6369f5aa223e415aa4255a4129ef249b177887dc635a87209
|
F test/shell9.test 8742a5b390cdcef6369f5aa223e415aa4255a4129ef249b177887dc635a87209
|
||||||
F test/shellA.test 78efeadb4191240914e787325dc2edab44c586c4d9d3a44a2a4ab066190e7e63
|
F test/shellA.test 09a6dd097ffa984ddf1fc0ddd2ae5f1a199cf11f3894b6a16410471c1536efe3
|
||||||
F test/shmlock.test 3dbf017d34ab0c60abe6a44e447d3552154bd0c87b41eaf5ceacd408dd13fda5
|
F test/shmlock.test 3dbf017d34ab0c60abe6a44e447d3552154bd0c87b41eaf5ceacd408dd13fda5
|
||||||
F test/shortread1.test bb591ef20f0fd9ed26d0d12e80eee6d7ac8897a3
|
F test/shortread1.test bb591ef20f0fd9ed26d0d12e80eee6d7ac8897a3
|
||||||
F test/show_speedtest1_rtree.tcl 32e6c5f073d7426148a6936a0408f4b5b169aba5
|
F test/show_speedtest1_rtree.tcl 32e6c5f073d7426148a6936a0408f4b5b169aba5
|
||||||
@@ -2211,8 +2211,8 @@ F tool/version-info.c 3b36468a90faf1bbd59c65fd0eb66522d9f941eedd364fabccd7227350
|
|||||||
F tool/warnings-clang.sh bbf6a1e685e534c92ec2bfba5b1745f34fb6f0bc2a362850723a9ee87c1b31a7
|
F tool/warnings-clang.sh bbf6a1e685e534c92ec2bfba5b1745f34fb6f0bc2a362850723a9ee87c1b31a7
|
||||||
F tool/warnings.sh 49a486c5069de041aedcbde4de178293e0463ae9918ecad7539eedf0ec77a139
|
F tool/warnings.sh 49a486c5069de041aedcbde4de178293e0463ae9918ecad7539eedf0ec77a139
|
||||||
F tool/win/sqlite.vsix deb315d026cc8400325c5863eef847784a219a2f
|
F tool/win/sqlite.vsix deb315d026cc8400325c5863eef847784a219a2f
|
||||||
P e029828de91b10b4c7f4a19bc70c35e4f36fae4ebf32b40553a6ba9f2b3af295
|
P 4c56cd7392f114e27b43d8fcc79444c3078cd65285ba7dd3338a414e2a9f5392
|
||||||
R 62dc4924d0f345bbea95b0294f27e51b
|
R 13d013de3c78981833017ee209b07ff8
|
||||||
U drh
|
U drh
|
||||||
Z 6b0a25939039131590c6c2268407c4ae
|
Z 457892f8d9951398e0ae7676d77bfb1c
|
||||||
# Remove this line to create a well-formed Fossil manifest.
|
# Remove this line to create a well-formed Fossil manifest.
|
||||||
|
@@ -1 +1 @@
|
|||||||
4c56cd7392f114e27b43d8fcc79444c3078cd65285ba7dd3338a414e2a9f5392
|
c3949852cee320c2e02123b99c33155c459b10b2ac8e4fe80b1b7624c9ce0817
|
||||||
|
@@ -8,19 +8,16 @@
|
|||||||
# May you share freely, never taking more than you give.
|
# May you share freely, never taking more than you give.
|
||||||
#
|
#
|
||||||
#***********************************************************************
|
#***********************************************************************
|
||||||
|
# TESTRUNNER: shell
|
||||||
#
|
#
|
||||||
# Test cases for the command-line shell - focusing on .mode and
|
# Test cases for the command-line shell - focusing on .mode and
|
||||||
# especially control-character escaping and the --escape option.
|
# especially control-character escaping and the --escape option.
|
||||||
#
|
#
|
||||||
# TESTRUNNER: shell
|
|
||||||
#
|
#
|
||||||
|
|
||||||
set testdir [file dirname $argv0]
|
set testdir [file dirname $argv0]
|
||||||
source $testdir/tester.tcl
|
source $testdir/tester.tcl
|
||||||
set CLI [test_cli_invocation]
|
set CLI [test_cli_invocation]
|
||||||
db close
|
|
||||||
forcedelete test.db test.db-journal test.db-wal
|
|
||||||
sqlite3 db test.db
|
|
||||||
|
|
||||||
do_execsql_test shellA-1.0 {
|
do_execsql_test shellA-1.0 {
|
||||||
CREATE TABLE t1(a INT, x TEXT);
|
CREATE TABLE t1(a INT, x TEXT);
|
||||||
@@ -39,7 +36,7 @@ do_execsql_test shellA-1.0 {
|
|||||||
# and that our calls to the CLI are working.
|
# and that our calls to the CLI are working.
|
||||||
#
|
#
|
||||||
do_test shellA-1.2 {
|
do_test shellA-1.2 {
|
||||||
exec $CLI test.db {.mode box} {SELECT * FROM t1;}
|
exec {*}$CLI test.db {.mode box} {SELECT * FROM t1;}
|
||||||
} {
|
} {
|
||||||
┌───┬──────────────────────────┐
|
┌───┬──────────────────────────┐
|
||||||
│ a │ x │
|
│ a │ x │
|
||||||
@@ -66,33 +63,33 @@ do_test shellA-1.2 {
|
|||||||
# ".mode list"
|
# ".mode list"
|
||||||
#
|
#
|
||||||
do_test shellA-1.3 {
|
do_test shellA-1.3 {
|
||||||
exec $CLI test.db {SELECT x FROM t1 WHERE a=2;}
|
exec {*}$CLI test.db {SELECT x FROM t1 WHERE a=2;}
|
||||||
} {
|
} {
|
||||||
␛[31mVT-100 codes␛[0m
|
␛[31mVT-100 codes␛[0m
|
||||||
}
|
}
|
||||||
do_test shellA-1.4 {
|
do_test shellA-1.4 {
|
||||||
exec $CLI test.db --escape symbol {SELECT x FROM t1 WHERE a=2;}
|
exec {*}$CLI test.db --escape symbol {SELECT x FROM t1 WHERE a=2;}
|
||||||
} {
|
} {
|
||||||
␛[31mVT-100 codes␛[0m
|
␛[31mVT-100 codes␛[0m
|
||||||
}
|
}
|
||||||
do_test shellA-1.5 {
|
do_test shellA-1.5 {
|
||||||
exec $CLI test.db --escape ascii {SELECT x FROM t1 WHERE a=2;}
|
exec {*}$CLI test.db --escape ascii {SELECT x FROM t1 WHERE a=2;}
|
||||||
} {
|
} {
|
||||||
^[[31mVT-100 codes^[[0m
|
^[[31mVT-100 codes^[[0m
|
||||||
}
|
}
|
||||||
do_test shellA-1.6 {
|
do_test shellA-1.6 {
|
||||||
exec $CLI test.db {.mode list --escape symbol} {SELECT x FROM t1 WHERE a=2;}
|
exec {*}$CLI test.db {.mode list --escape symbol} {SELECT x FROM t1 WHERE a=2;}
|
||||||
} {
|
} {
|
||||||
␛[31mVT-100 codes␛[0m
|
␛[31mVT-100 codes␛[0m
|
||||||
}
|
}
|
||||||
do_test shellA-1.7 {
|
do_test shellA-1.7 {
|
||||||
exec $CLI test.db {.mode list --escape ascii} {SELECT x FROM t1 WHERE a=2;}
|
exec {*}$CLI test.db {.mode list --escape ascii} {SELECT x FROM t1 WHERE a=2;}
|
||||||
} {
|
} {
|
||||||
^[[31mVT-100 codes^[[0m
|
^[[31mVT-100 codes^[[0m
|
||||||
}
|
}
|
||||||
do_test shellA-1.8 {
|
do_test shellA-1.8 {
|
||||||
file delete -force out.txt
|
file delete -force out.txt
|
||||||
exec $CLI test.db {.mode list --escape off} {SELECT x FROM t1 WHERE a=7;} \
|
exec {*}$CLI test.db {.mode list --escape off} {SELECT x FROM t1 WHERE a=7;} \
|
||||||
>out.txt
|
>out.txt
|
||||||
set fd [open out.txt rb]
|
set fd [open out.txt rb]
|
||||||
set res [read $fd]
|
set res [read $fd]
|
||||||
@@ -101,13 +98,13 @@ do_test shellA-1.8 {
|
|||||||
} "carriage\rreturn"
|
} "carriage\rreturn"
|
||||||
do_test shellA-1.9 {
|
do_test shellA-1.9 {
|
||||||
set rc [catch {
|
set rc [catch {
|
||||||
exec $CLI test.db {.mode test --escape xyz}
|
exec {*}$CLI test.db {.mode test --escape xyz}
|
||||||
} msg]
|
} msg]
|
||||||
lappend rc $msg
|
lappend rc $msg
|
||||||
} {1 {unknown control character escape mode "xyz" - choices: symbol ascii off}}
|
} {1 {unknown control character escape mode "xyz" - choices: symbol ascii off}}
|
||||||
do_test shellA-1.10 {
|
do_test shellA-1.10 {
|
||||||
set rc [catch {
|
set rc [catch {
|
||||||
exec $CLI --escape abc test.db .q
|
exec {*}$CLI --escape abc test.db .q
|
||||||
} msg]
|
} msg]
|
||||||
lappend rc $msg
|
lappend rc $msg
|
||||||
} {1 {unknown control character escape mode "abc" - choices: symbol ascii off}}
|
} {1 {unknown control character escape mode "abc" - choices: symbol ascii off}}
|
||||||
@@ -115,7 +112,7 @@ do_test shellA-1.10 {
|
|||||||
# ".mode quote"
|
# ".mode quote"
|
||||||
#
|
#
|
||||||
do_test shellA-2.1 {
|
do_test shellA-2.1 {
|
||||||
exec $CLI test.db --quote {SELECT a, x FROM t1 WHERE a IN (1,2,6,7,8)}
|
exec {*}$CLI test.db --quote {SELECT a, x FROM t1 WHERE a IN (1,2,6,7,8)}
|
||||||
} {
|
} {
|
||||||
1,'line with '' single quote'
|
1,'line with '' single quote'
|
||||||
2,unistr('\u001b[31mVT-100 codes\u001b[0m')
|
2,unistr('\u001b[31mVT-100 codes\u001b[0m')
|
||||||
@@ -125,20 +122,20 @@ line'
|
|||||||
8,'last line'
|
8,'last line'
|
||||||
}
|
}
|
||||||
do_test shellA-2.2 {
|
do_test shellA-2.2 {
|
||||||
exec $CLI test.db --quote {.mode}
|
exec {*}$CLI test.db --quote {.mode}
|
||||||
} {current output mode: quote --escape symbol}
|
} {current output mode: quote --escape symbol}
|
||||||
do_test shellA-2.3 {
|
do_test shellA-2.3 {
|
||||||
exec $CLI test.db --quote --escape ASCII {.mode}
|
exec {*}$CLI test.db --quote --escape ASCII {.mode}
|
||||||
} {current output mode: quote --escape ascii}
|
} {current output mode: quote --escape ascii}
|
||||||
do_test shellA-2.4 {
|
do_test shellA-2.4 {
|
||||||
exec $CLI test.db --quote --escape OFF {.mode}
|
exec {*}$CLI test.db --quote --escape OFF {.mode}
|
||||||
} {current output mode: quote --escape off}
|
} {current output mode: quote --escape off}
|
||||||
|
|
||||||
|
|
||||||
# ".mode line"
|
# ".mode line"
|
||||||
#
|
#
|
||||||
do_test shellA-3.1 {
|
do_test shellA-3.1 {
|
||||||
exec $CLI test.db --line --escape symbol \
|
exec {*}$CLI test.db --line --escape symbol \
|
||||||
{SELECT a, x FROM t1 WHERE a IN (1,2,6,7,8)}
|
{SELECT a, x FROM t1 WHERE a IN (1,2,6,7,8)}
|
||||||
} {
|
} {
|
||||||
a = 1
|
a = 1
|
||||||
@@ -158,7 +155,7 @@ line
|
|||||||
x = last line
|
x = last line
|
||||||
}
|
}
|
||||||
do_test shellA-3.2 {
|
do_test shellA-3.2 {
|
||||||
exec $CLI test.db --line --escape ascii \
|
exec {*}$CLI test.db --line --escape ascii \
|
||||||
{SELECT a, x FROM t1 WHERE a IN (1,2,6,7,8)}
|
{SELECT a, x FROM t1 WHERE a IN (1,2,6,7,8)}
|
||||||
} {
|
} {
|
||||||
a = 1
|
a = 1
|
||||||
@@ -181,7 +178,7 @@ line
|
|||||||
# ".mode box"
|
# ".mode box"
|
||||||
#
|
#
|
||||||
do_test shellA-4.1 {
|
do_test shellA-4.1 {
|
||||||
exec $CLI test.db --box --escape ascii \
|
exec {*}$CLI test.db --box --escape ascii \
|
||||||
{SELECT a, x FROM t1 WHERE a IN (1,2,6,7,8)}
|
{SELECT a, x FROM t1 WHERE a IN (1,2,6,7,8)}
|
||||||
} {
|
} {
|
||||||
┌───┬──────────────────────────┐
|
┌───┬──────────────────────────┐
|
||||||
@@ -200,7 +197,7 @@ do_test shellA-4.1 {
|
|||||||
└───┴──────────────────────────┘
|
└───┴──────────────────────────┘
|
||||||
}
|
}
|
||||||
do_test shellA-4.2 {
|
do_test shellA-4.2 {
|
||||||
exec $CLI test.db {.mode qbox} {SELECT a, x FROM t1 WHERE a IN (1,2,6,7,8)}
|
exec {*}$CLI test.db {.mode qbox} {SELECT a, x FROM t1 WHERE a IN (1,2,6,7,8)}
|
||||||
} {
|
} {
|
||||||
┌───┬───────────────────────────────────────────┐
|
┌───┬───────────────────────────────────────────┐
|
||||||
│ a │ x │
|
│ a │ x │
|
||||||
@@ -221,7 +218,7 @@ do_test shellA-4.2 {
|
|||||||
# ".mode insert"
|
# ".mode insert"
|
||||||
#
|
#
|
||||||
do_test shellA-5.1 {
|
do_test shellA-5.1 {
|
||||||
exec $CLI test.db {.mode insert t1 --escape ascii} \
|
exec {*}$CLI test.db {.mode insert t1 --escape ascii} \
|
||||||
{SELECT a, x FROM t1 WHERE a IN (1,2,6,7,8)}
|
{SELECT a, x FROM t1 WHERE a IN (1,2,6,7,8)}
|
||||||
} {
|
} {
|
||||||
INSERT INTO t1 VALUES(1,'line with '' single quote');
|
INSERT INTO t1 VALUES(1,'line with '' single quote');
|
||||||
@@ -231,7 +228,7 @@ INSERT INTO t1 VALUES(7,unistr('carriage\u000dreturn'));
|
|||||||
INSERT INTO t1 VALUES(8,'last line');
|
INSERT INTO t1 VALUES(8,'last line');
|
||||||
}
|
}
|
||||||
do_test shellA-5.2 {
|
do_test shellA-5.2 {
|
||||||
exec $CLI test.db {.mode insert t1 --escape symbol} \
|
exec {*}$CLI test.db {.mode insert t1 --escape symbol} \
|
||||||
{SELECT a, x FROM t1 WHERE a IN (1,2,6,7,8)}
|
{SELECT a, x FROM t1 WHERE a IN (1,2,6,7,8)}
|
||||||
} {
|
} {
|
||||||
INSERT INTO t1 VALUES(1,'line with '' single quote');
|
INSERT INTO t1 VALUES(1,'line with '' single quote');
|
||||||
@@ -242,7 +239,7 @@ INSERT INTO t1 VALUES(8,'last line');
|
|||||||
}
|
}
|
||||||
do_test shellA-5.3 {
|
do_test shellA-5.3 {
|
||||||
file delete -force out.txt
|
file delete -force out.txt
|
||||||
exec $CLI test.db {.mode insert t1 --escape off} \
|
exec {*}$CLI test.db {.mode insert t1 --escape off} \
|
||||||
{SELECT a, x FROM t1 WHERE a IN (1,2,6,7,8)} >out.txt
|
{SELECT a, x FROM t1 WHERE a IN (1,2,6,7,8)} >out.txt
|
||||||
set fd [open out.txt rb]
|
set fd [open out.txt rb]
|
||||||
set res [read $fd]
|
set res [read $fd]
|
||||||
|
Reference in New Issue
Block a user