]> git.ipfire.org Git - thirdparty/sqlite.git/commitdiff
Updates to testrunner.tcl so that it runs fuzztest using multiple jobs.
authordan <Dan Kennedy>
Mon, 28 Aug 2023 20:14:19 +0000 (20:14 +0000)
committerdan <Dan Kennedy>
Mon, 28 Aug 2023 20:14:19 +0000 (20:14 +0000)
FossilOrigin-Name: ceeabe9f8b31a30c65147fd270b92d43c7842247548cee9de165113991f6c2cf

1  2 
manifest
manifest.uuid
test/testrunner_data.tcl

diff --cc manifest
index d123e5846fe3dc0a44102ad34c2bef3f02b90ea1,47a70ff455090b88eee7f4be363a7be5f9e854fc..7c36b33c283c2d0b5b0b868f76252da4708afade
+++ b/manifest
@@@ -1,5 -1,5 +1,5 @@@
- C Remove\sa\spair\sof\swhat\sare\sarguably\sunnecessary\smutex\slocks\s(and\soften\shit).\sMore\sJNI-internal\scleanups.
- D 2023-08-28T16:22:31.875
 -C Fix\sthe\s"sdevtest"\stestrunner.tcl\scommand\sso\sthat\sit\scorrectly\senables\sasan\son\swindows.
 -D 2023-08-28T20:02:59.639
++C Updates\sto\stestrunner.tcl\sso\sthat\sit\sruns\sfuzztest\susing\smultiple\sjobs.
++D 2023-08-28T20:14:19.097
  F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1
  F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea
  F LICENSE.md df5091916dbb40e6e9686186587125e1b2ff51f022cc334e886c19a0e9982724
@@@ -1617,8 -1615,8 +1618,8 @@@ F test/temptable2.test 76821347810ecc88
  F test/temptable3.test d11a0974e52b347e45ee54ef1923c91ed91e4637
  F test/temptrigger.test 38f0ca479b1822d3117069e014daabcaacefffcc
  F test/tester.tcl 68454ef88508c196d19e8694daa27bff7107a91857799eaa12f417188ae53ede
- F test/testrunner.tcl ccdfda84732cf8665bd8d3bfee79b80841e221459e5d00a632a3a5c758966e1f
- F test/testrunner_data.tcl c448693eb6fdbadb78cb26f6253d4f335666f9836f988afa575de960b666b19f
+ F test/testrunner.tcl c88eae7d8ba9825d09f080ee2aa98b8e65c381bb56b4d427fb492625d2d4c36b
 -F test/testrunner_data.tcl 7d698b094b66b2a9849c6a592fe7083fd76b382257d49985b3487f2f5bf412ad
++F test/testrunner_data.tcl 05f2eafd9bcf0aafcc2b747b751f81c5b958e7dc286d108ad81d40b984ff60b3
  F test/thread001.test a0985c117eab62c0c65526e9fa5d1360dd1cac5b03bde223902763274ce21899
  F test/thread002.test c24c83408e35ba5a952a3638b7ac03ccdf1ce4409289c54a050ac4c5f1de7502
  F test/thread003.test ee4c9efc3b86a6a2767516a37bd64251272560a7
@@@ -2106,8 -2104,8 +2107,9 @@@ F vsixtest/vsixtest.tcl 6a9a6ab600c25a9
  F vsixtest/vsixtest.vcxproj.data 2ed517e100c66dc455b492e1a33350c1b20fbcdc
  F vsixtest/vsixtest.vcxproj.filters 37e51ffedcdb064aad6ff33b6148725226cd608e
  F vsixtest/vsixtest_TemporaryKey.pfx e5b1b036facdb453873e7084e1cae9102ccc67a0
- P 349aac7e8d513bc420e8948b84cf715e454443439fdcd5aff0f2b13815a9cbb3
- R 3d489af3468d8a7b527ca6166e876cc6
- U stephan
- Z a77195f4742188b139cedf649b9d3b8f
 -P 26ae090889640bfcf02a6dd5aa58044edd4d0708a11d8e005149f1a3c8495bba
 -R 72ed41043ab228a8430556867561403b
++P ecf07a0144dc6402b1e0924b1775d99dc465b27aa86a2718cac60a9b4c974312 6463192369ff22eb15d4e34590ef55cd8a6f2501227835664816277806bf961b
++R 31bc738c1437151db584e22f2c509958
++T +closed 6463192369ff22eb15d4e34590ef55cd8a6f2501227835664816277806bf961b
+ U dan
 -Z 47e21353f9923e8c0acadea18c12278f
++Z 97aabfccc20038ea125aae98b8297d02
  # Remove this line to create a well-formed Fossil manifest.
diff --cc manifest.uuid
index b73fe40d2844a946ad8c8a8ce286325c72a2873f,78bd4bf0d6e21c7efd4956c9fb0d5feaa6cbaa08..d7d1100a9c8285505364be04c9c6d2e0389ae705
@@@ -1,1 -1,1 +1,1 @@@
- ecf07a0144dc6402b1e0924b1775d99dc465b27aa86a2718cac60a9b4c974312
 -6463192369ff22eb15d4e34590ef55cd8a6f2501227835664816277806bf961b
++ceeabe9f8b31a30c65147fd270b92d43c7842247548cee9de165113991f6c2cf
index ce2ce01dd60ebf4e755cc0c63f867a66b9007cf6,381bb3b4614399e46362cfb398667dd59b3fc16d..32dbe455723738d346118a7e3aff46747d54f2bc
@@@ -370,15 -370,45 +370,45 @@@ proc trd_configs {platform bld} 
  
  proc trd_extras {platform bld} {
    trd_import
+   if {[info exists extra($platform.$bld)]==0} { return [list] }
+   return $extra($platform.$bld)
+ }
+ # Usage: 
+ #
+ #     trd_fuzztest_data
+ #
+ # This returns data used by testrunner.tcl to run commands equivalent 
+ # to [make fuzztest]. The returned value is a list, which should be
+ # interpreted as a sequence of pairs. The first element of each pair
+ # is an interpreter name. The second element is a list of files.
+ # testrunner.tcl automatically creates one job to build each interpreter,
+ # and one to run each of the files with it once it has been built.
+ #
+ # In practice, the returned value looks like this:
+ #
+ # {
+ #   {fuzzcheck {$testdir/fuzzdata1.db $testdir/fuzzdata2.db ...}}
+ #   {{sessionfuzz run} $testdir/sessionfuzz-data1.db}
+ # }
+ #
+ # where $testdir is replaced by the full-path to the test-directory (the
+ # directory containing this file). "fuzzcheck" and "sessionfuzz" have .exe
+ # extensions on windows.
+ #
+ proc trd_fuzztest_data {} {
+   set EXE ""
+   set lFuzzDb    [glob [file join $::testdir fuzzdata*.db]] 
+   set lSessionDb [glob [file join $::testdir sessionfuzz-data*.db]]
  
-   set elist [list]
-   if {[info exists extra($platform.$bld)]} {
-     set elist $extra($platform.$bld)
+   if {$::tcl_platform(platform)=="windows"} {
+     return [list fuzzcheck.exe $lFuzzDb]
    }
  
-   set elist
 -  return [list fuzzcheck $lFuzzDb sessionfuzz $lSessionDb]
++  return [list fuzzcheck $lFuzzDb {sessionfuzz run} $lSessionDb]
  }
  
  proc trd_all_configs {} {
    trd_import
    set all_configs