mirror of
https://github.com/sqlite/sqlite.git
synced 2025-10-19 23:49:30 +03:00
New testrunner.tcl option "--case DISPLAYLNAME" only runs the single case
(and its build dependencies) that exactly matches DISPLAYNAME. FossilOrigin-Name: 8ea2e097b731514c284f255f12b08e15f63c7f49641a698e61ee7e47cc9d3c45
This commit is contained in:
12
manifest
12
manifest
@@ -1,5 +1,5 @@
|
||||
C Fix\stestrunner.tcl\sso\sthat\s--help\soutput\sgoes\sto\sstdout,\snot\sstderr.
|
||||
D 2025-10-06T14:30:22.167
|
||||
C New\stestrunner.tcl\soption\s"--case\sDISPLAYLNAME"\sonly\sruns\sthe\ssingle\scase\n(and\sits\sbuild\sdependencies)\sthat\sexactly\smatches\sDISPLAYNAME.
|
||||
D 2025-10-06T15:53:52.416
|
||||
F .fossil-settings/binary-glob 61195414528fb3ea9693577e1980230d78a1f8b0a54c78cf1b9b24d0a409ed6a x
|
||||
F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1
|
||||
F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea
|
||||
@@ -1690,7 +1690,7 @@ F test/temptable2.test 76821347810ecc88203e6ef0dd6897b6036ac788e9dd3e6b04fd4d163
|
||||
F test/temptable3.test d11a0974e52b347e45ee54ef1923c91ed91e4637
|
||||
F test/temptrigger.test 38f0ca479b1822d3117069e014daabcaacefffcc
|
||||
F test/tester.tcl 463ae33b8bf75ac77451df19bd65e7c415c2e9891227c7c9e657d0a2d8e1074a
|
||||
F test/testrunner.tcl 6d238aa684188ed9c40de5eaba9ba520045df9ac64877248543e44ae4555b9eb x
|
||||
F test/testrunner.tcl 66d14fc27a154de22c214a9db4b7dcab6aed2b4d84972ffce760d470b8191b7d x
|
||||
F test/testrunner_data.tcl c507a9afa911c03446ed90442ffd4a98aca02882c3d51bd1177c24795674def8
|
||||
F test/testrunner_estwork.tcl 7927a84327259a32854926f68a75292e33a61e7e052fdbfcb01f18696c99c724
|
||||
F test/thread001.test a0985c117eab62c0c65526e9fa5d1360dd1cac5b03bde223902763274ce21899
|
||||
@@ -2168,8 +2168,8 @@ F tool/version-info.c 3b36468a90faf1bbd59c65fd0eb66522d9f941eedd364fabccd7227350
|
||||
F tool/warnings-clang.sh bbf6a1e685e534c92ec2bfba5b1745f34fb6f0bc2a362850723a9ee87c1b31a7
|
||||
F tool/warnings.sh 1ad0169b022b280bcaaf94a7fa231591be96b514230ab5c98fbf15cd7df842dd
|
||||
F tool/win/sqlite.vsix deb315d026cc8400325c5863eef847784a219a2f
|
||||
P d71cd722c478288601c70df8cec8c242cc623d2147b30f4f68dad57c75b3ee4a
|
||||
R 3c756745369c530a639ff29c23ffa763
|
||||
P 441a759c225d4e710a693339402624e7ba52852c08aa64439ed4568c193ad529
|
||||
R e90b90f4d394350c07286abfd5e6ecff
|
||||
U drh
|
||||
Z e37f86978f05cd5d329c04e26e755a80
|
||||
Z 378abedcb519a363b3577a7db41694b7
|
||||
# Remove this line to create a well-formed Fossil manifest.
|
||||
|
@@ -1 +1 @@
|
||||
441a759c225d4e710a693339402624e7ba52852c08aa64439ed4568c193ad529
|
||||
8ea2e097b731514c284f255f12b08e15f63c7f49641a698e61ee7e47cc9d3c45
|
||||
|
@@ -108,6 +108,7 @@ Usage:
|
||||
|
||||
where SWITCHES are:
|
||||
--buildonly Build test exes but do not run tests
|
||||
--case DISPLAYNAME Only run the one test identified by DISPLAYNAME
|
||||
--config CONFIGS Only use configs on comma-separate list CONFIGS
|
||||
--dryrun Write what would have happened to testrunner.log
|
||||
--explain Write summary to stdout
|
||||
@@ -239,6 +240,7 @@ set TRG(explain) 0 ;# True for the --explain option
|
||||
set TRG(stopOnError) 0 ;# Stop running at first failure
|
||||
set TRG(stopOnCore) 0 ;# Stop on a core-dump
|
||||
set TRG(fullstatus) 0 ;# Full "status" report while running
|
||||
set TRG(case) {} ;# Only run this one case
|
||||
|
||||
switch -nocase -glob -- $tcl_platform(os) {
|
||||
*darwin* {
|
||||
@@ -873,6 +875,9 @@ for {set ii 0} {$ii < [llength $argv]} {incr ii} {
|
||||
} elseif {($n>2 && [string match "$a*" --omit]) || $a=="-c"} {
|
||||
incr ii
|
||||
set TRG(omitconfig) [lindex $argv $ii]
|
||||
} elseif {($n>2 && [string match "$a*" --case]) || $a=="-c"} {
|
||||
incr ii
|
||||
set TRG(case) [lindex $argv $ii]
|
||||
} elseif {($n>2 && [string match "$a*" --fuzzdb])} {
|
||||
incr ii
|
||||
set env(FUZZDB) [lindex $argv $ii]
|
||||
@@ -1442,6 +1447,31 @@ proc add_jobs_from_cmdline {patternlist} {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
# If the "--case DISPLAYNAME" option appears on the command-line, mark
|
||||
# all tests other than DISPLAYNAME as 'omit'.
|
||||
#
|
||||
if {[info exists TRG(case)] && $TRG(case) ne ""} {
|
||||
set jid [trdb one {
|
||||
SELECT jobid FROM jobs WHERE displayname=$TRG(case)
|
||||
}]
|
||||
if {$jid eq ""} {
|
||||
puts "ERROR: No jobs match \"$TRG(case)\"."
|
||||
puts "The argument to --case must exactly match the jobs.displayname column"
|
||||
puts "of the testrunner.db database."
|
||||
trdb eval {UPDATE jobs SET state='omit'}
|
||||
} else {
|
||||
trdb eval {
|
||||
WITH RECURSIVE keepers(jid,did) AS (
|
||||
SELECT jobid,depid FROM jobs
|
||||
WHERE displayname GLOB $TRG(case)
|
||||
UNION
|
||||
SELECT jobid,depid FROM jobs, keepers WHERE jobid=did
|
||||
)
|
||||
DELETE FROM jobs WHERE jobid NOT IN (SELECT jid FROM keepers);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
proc make_new_testset {} {
|
||||
@@ -1711,6 +1741,7 @@ proc run_testset {} {
|
||||
}
|
||||
close $TRG(log)
|
||||
progress_report
|
||||
puts ""
|
||||
|
||||
r_write_db {
|
||||
set tm [clock_milliseconds]
|
||||
@@ -1730,7 +1761,7 @@ proc run_testset {} {
|
||||
}
|
||||
}
|
||||
|
||||
puts "\nTest database is $TRG(dbname)"
|
||||
puts "Test database is $TRG(dbname)"
|
||||
puts "Test log is $TRG(logname)"
|
||||
if {[info exists TRG(FUZZDB)]} {
|
||||
puts "Extra fuzzcheck data taken from $TRG(FUZZDB)"
|
||||
|
Reference in New Issue
Block a user