$(TOP)/test/fuzzdata2.db \
$(TOP)/test/fuzzdata3.db
+# Standard options to testfixture
+#
+TESTOPTS = --verbose=file --output=test-out.txt
+
# This is the default Makefile target. The objects listed here
# are what get build when you type just "make" with no arguments.
#
# A very detailed test running most or all test cases
fulltest: $(TESTPROGS) fuzztest
- ./testfixture$(TEXE) $(TOP)/test/all.test
+ ./testfixture$(TEXE) $(TOP)/test/all.test $(TESTOPTS)
# Really really long testing
soaktest: $(TESTPROGS)
- ./testfixture$(TEXE) $(TOP)/test/all.test -soak=1
+ ./testfixture$(TEXE) $(TOP)/test/all.test -soak=1 $(TESTOPTS)
# Do extra testing but not everything.
fulltestonly: $(TESTPROGS)
valgrindfuzz: fuzzcheck$(TEXT) $(FUZZDATA)
valgrind ./fuzzcheck$(TEXE) --cell-size-check --quiet $(FUZZDATA)
-# This is the common case. Run many tests but not those that take
-# a really long time.
+# Minimal testing that runs in less than 3 minutes
+#
+quicktest: ./testfixture$(TEXE)
+ ./testfixture$(TEXE) $(TOP)/test/extraquick.test $(TESTOPTS)
+
+# This is the common case. Run many tests that do not take too long,
+# including fuzzcheck, sqlite3_analyzer, and sqldiff tests.
#
test: $(TESTPROGS) fuzztest
- ./testfixture$(TEXE) $(TOP)/test/veryquick.test
+ ./testfixture$(TEXE) $(TOP)/test/veryquick.test $(TESTOPTS)
# Run a test using valgrind. This can take a really long time
# because valgrind is so much slower than a native machine.
#
valgrindtest: $(TESTPROGS) valgrindfuzz
- OMIT_MISUSE=1 valgrind -v ./testfixture$(TEXE) $(TOP)/test/permutations.test valgrind
+ OMIT_MISUSE=1 valgrind -v ./testfixture$(TEXE) $(TOP)/test/permutations.test valgrind $(TESTOPTS)
# A very fast test that checks basic sanity. The name comes from
# the 60s-era electronics testing: "Turn it on and see if smoke
# comes out."
#
smoketest: $(TESTPROGS) fuzzcheck$(TEXE)
- ./testfixture$(TEXE) $(TOP)/test/main.test
+ ./testfixture$(TEXE) $(TOP)/test/main.test $(TESTOPTS)
sqlite3_analyzer.c: sqlite3.c $(TOP)/src/tclsqlite.c $(TOP)/tool/spaceanal.tcl
echo "#define TCLSH 2" > $@
$(TOP)\test\fuzzdata2.db \
$(TOP)\test\fuzzdata3.db
+# Standard options to testfixture
+#
+TESTOPTS = --verbose=file --output=test-out.txt
# This is the default Makefile target. The objects listed here
# are what get build when you type just "make" with no arguments.
/link $(LTLINKOPTS) $(LTLIBPATHS) $(LIBRESOBJS) $(LTLIBS) $(TLIBS)
extensiontest: testfixture.exe testloadext.dll
- .\testfixture.exe $(TOP)\test\loadext.test
+ .\testfixture.exe $(TOP)\test\loadext.test $(TESTOPTS)
fulltest: $(TESTPROGS) fuzztest
- .\testfixture.exe $(TOP)\test\all.test
+ .\testfixture.exe $(TOP)\test\all.test $(TESTOPTS)
soaktest: $(TESTPROGS)
- .\testfixture.exe $(TOP)\test\all.test -soak=1
+ .\testfixture.exe $(TOP)\test\all.test -soak=1 $(TESTOPTS)
fulltestonly: $(TESTPROGS) fuzztest
.\testfixture.exe $(TOP)\test\full.test
queryplantest: testfixture.exe sqlite3.exe
- .\testfixture.exe $(TOP)\test\permutations.test queryplanner
+ .\testfixture.exe $(TOP)\test\permutations.test queryplanner $(TESTOPTS)
fuzztest: fuzzcheck.exe
.\fuzzcheck.exe $(FUZZDATA)
+# Minimal testing that runs in less than 3 minutes (on a fast machine)
+#
+quicktest: .\testfixture.exe
+ .\testfixture.exe $(TOP)\test\extraquick.test $(TESTOPTS)
+
+# This is the common case. Run many tests that do not take too long,
+# including fuzzcheck, sqlite3_analyzer, and sqldiff tests.
+#
test: $(TESTPROGS) fuzztest
- .\testfixture.exe $(TOP)\test\veryquick.test
+ .\testfixture.exe $(TOP)\test\veryquick.test $(TESTOPTS)
smoketest: $(TESTPROGS)
- .\testfixture.exe $(TOP)\test\main.test
+ .\testfixture.exe $(TOP)\test\main.test $(TESTOPTS)
sqlite3_analyzer.c: $(SQLITE3C) $(TOP)\src\tclsqlite.c $(TOP)\tool\spaceanal.tcl
echo #define TCLSH 2 > $@
$(TOP)/test/fuzzdata2.db \
$(TOP)/test/fuzzdata3.db
+# Standard options to testfixture
+#
+TESTOPTS = --verbose=file --output=test-out.txt
+
# This is the default Makefile target. The objects listed here
# are what get build when you type just "make" with no arguments.
#
-o testfixture$(EXE) $(LIBTCL) $(THREADLIB)
fulltest: $(TESTPROGS) fuzztest
- ./testfixture$(EXE) $(TOP)/test/all.test
+ ./testfixture$(EXE) $(TOP)/test/all.test $(TESTOPTS)
soaktest: $(TESTPROGS)
- ./testfixture$(EXE) $(TOP)/test/all.test -soak=1
+ ./testfixture$(EXE) $(TOP)/test/all.test -soak=1 $(TESTOPTS)
fulltestonly: $(TESTPROGS) fuzztest
- ./testfixture$(EXE) $(TOP)/test/full.test
+ ./testfixture$(EXE) $(TOP)/test/full.test $(TESTOPTS)
queryplantest: testfixture$(EXE) sqlite3$(EXE)
- ./testfixture$(EXE) $(TOP)/test/permutations.test queryplanner
+ ./testfixture$(EXE) $(TOP)/test/permutations.test queryplanner $(TESTOPTS)
fuzztest: fuzzcheck$(EXE) $(FUZZDATA)
./fuzzcheck$(EXE) $(FUZZDATA)
valgrindfuzz: fuzzcheck$(EXE) $(FUZZDATA)
valgrind ./fuzzcheck$(EXE) --cell-size-check --quiet $(FUZZDATA)
+# A very quick test using only testfixture and omitting all the slower
+# tests. Designed to run in under 3 minutes on a workstation.
+#
+quicktest: ./testfixture$(EXE)
+ ./testfixture$(EXE) $(TOP)/test/extraquick.test $(TESTOPTS)
+
+# The default test case. Runs most of the faster standard TCL tests,
+# and fuzz tests, and sqlite3_analyzer and sqldiff tests.
+#
test: $(TESTPROGS) fuzztest
- ./testfixture$(EXE) $(TOP)/test/veryquick.test
+ ./testfixture$(EXE) $(TOP)/test/veryquick.test $(TESTOPTS)
# Run a test using valgrind. This can take a really long time
# because valgrind is so much slower than a native machine.
#
valgrindtest: $(TESTPROGS) valgrindfuzz
- OMIT_MISUSE=1 valgrind -v ./testfixture$(EXE) $(TOP)/test/permutations.test valgrind
+ OMIT_MISUSE=1 valgrind -v \
+ ./testfixture$(EXE) $(TOP)/test/permutations.test valgrind $(TESTOPTS)
# A very fast test that checks basic sanity. The name comes from
# the 60s-era electronics testing: "Turn it on and see if smoke
# comes out."
#
smoketest: $(TESTPROGS) fuzzcheck$(EXE)
- ./testfixture$(EXE) $(TOP)/test/main.test
+ ./testfixture$(EXE) $(TOP)/test/main.test $(TESTOPTS)
# The next two rules are used to support the "threadtest" target. Building
# threadtest runs a few thread-safety tests that are implemented in C. This
-C Avoid\spassing\sconstraints\sthat\sare\sunusable\sdue\sto\sLEFT\sor\sCROSS\sjoins\sto\svirtual\stable\sxBestIndex()\smethods.
-D 2015-06-10T14:27:40.648
+C "test"\stargets\son\sall\smakefiles\suse\s--verbose=file\s--output=test-out.txt.\nAdd\sthe\snew\s"quicktest"\starget\sto\sall\smakefiles\s-\sdesigned\sto\srun\sin\sunder\nthree\sminutes.\s\sThe\s--quick\soption\son\sreleasetest.tcl\snow\suses\squicktest.
+D 2015-06-10T18:53:09.696
F Makefile.arm-wince-mingw32ce-gcc d6df77f1f48d690bd73162294bbba7f59507c72f
-F Makefile.in 580e006530fab67ccd34926ce2eda66d326af60f
+F Makefile.in 1063c58075b7400d93326b0eb332b48a54f53025
F Makefile.linux-gcc 91d710bdc4998cb015f39edf3cb314ec4f4d7e23
-F Makefile.msc 5438dc167466f51349ab0c4497aef547d0c9352c
+F Makefile.msc 5a8418c81f736dfa953c809af1a48398017b3610
F Makefile.vxworks e1b65dea203f054e71653415bd8f96dcaed47858
F README.md 8ecc12493ff9f820cdea6520a9016001cb2e59b7
F VERSION ce0ae95abd7121c534f6917c1c8f2b70d9acd4db
F install-sh 9d4de14ab9fb0facae2f48780b874848cbf2f895 x
F ltmain.sh 3ff0879076df340d2e23ae905484d8c15d5fdea8
F magic.txt 8273bf49ba3b0c8559cb2774495390c31fd61c60
-F main.mk 033741a45df95c577814914b13d182a0b6c7dc89
+F main.mk 68f86c21505d6b66765a13c193f00a53dde6a212
F mkopcodec.awk c2ff431854d702cdd2d779c9c0d1f58fa16fa4ea
F mkopcodeh.awk d5e22023b5238985bb54a72d33e0ac71fe4f8a32
F mkso.sh fd21c06b063bb16a5d25deea1752c2da6ac3ed83
F test/analyzeD.test 08f9d0bee4e118a66fff3a32d02dbe0ee0a2b594
F test/analyzeE.test 8684e8ac5722fb97c251887ad97e5d496a98af1d
F test/analyzeF.test 7ccd7a04f7d3061bde1a8a4dacc4792edccf6bf2
-F test/analyzer1.test e3bccac3be49382050464952998a631bf51e3ce1
+F test/analyzer1.test 498e2ff4b62740c2751c3a2f8b744fe26689fae9
F test/async.test 1d0e056ba1bb9729283a0f22718d3a25e82c277b
F test/async2.test c0a9bd20816d7d6a2ceca7b8c03d3d69c28ffb8b
F test/async3.test d73a062002376d7edc1fe3edff493edbec1fc2f7
F test/exists.test 8f7b27b61c2fbe5822f0a1f899c715d14e416e30
F test/expr.test 79c3e7502d9e571553b85f0ecc8ff2ac7d0e4931
F test/extension01.test 00d13cec817f331a687a243e0e5a2d87b0e358c9
+F test/extraquick.test cb254400bd42bfb777ff675356aabf3287978f79
F test/fallocate.test 3e979af17dfa7e5e9dda5eba1a696c04fa9d47f7
F test/filectrl.test 14fa712e42c4cb791e09dfd58a6a03efb47ef13a
F test/filefmt.test cb34663f126cbc2d358af552dcaf5c72769b0146
F test/pcache.test b09104b03160aca0d968d99e8cd2c5b1921a993d
F test/pcache2.test a83efe2dec0d392f814bfc998def1d1833942025
F test/percentile.test 4243af26b8f3f4555abe166f723715a1f74c77ff
-F test/permutations.test 32e2b82e0dfbe5c6b6b38a5c1f4cac194298ad4e
+F test/permutations.test 6b0f339a4d5f00041555a986dde8fbe8f54c25bc
F test/pragma.test be7195f0aa72bdb8a512133e9640ac40f15b57a2
F test/pragma2.test f624a496a95ee878e81e59961eade66d5c00c028
F test/pragma3.test 6f849ccffeee7e496d2f2b5e74152306c0b8757c
F test/rdonly.test 64e2696c322e3538df0b1ed624e21f9a23ed9ff8
F test/regexp1.test 497ea812f264d12b6198d6e50a76be4a1973a9d8
F test/reindex.test 44edd3966b474468b823d481eafef0c305022254
-F test/releasetest.tcl 3e906a8bbd047b8e1f035984fbdc96df4caaea47
+F test/releasetest.tcl 2aaffa548a8f8d10053b20bcf68a1b5a01081e51
F test/resolver01.test f4022acafda7f4d40eca94dbf16bc5fc4ac30ceb
F test/rollback.test 458fe73eb3ffdfdf9f6ba3e9b7350a6220414dea
F test/rollback2.test fc14cf6d1a2b250d2735ef16124b971bce152f14
F test/speed4p.test 0e51908951677de5a969b723e03a27a1c45db38b
F test/speedtest1.c 9f1b745c24886cced3f70ffc666300152a39013c
F test/spellfix.test 24f676831acddd2f4056a598fd731a72c6311f49
-F test/sqldiff1.test e5ecfe95b3a2ff6380f0db6ea8bec246b675e122
+F test/sqldiff1.test 8f6bc7c6a5b3585d350d779c6078869ba402f8f5
F test/sqllimits1.test e05786eaed7950ff6a2d00031d001d8a26131e68
F test/stat.test 8de91498c99f5298b303f70f1d1f3b9557af91bf
F test/statfault.test f525a7bf633e50afd027700e9a486090684b1ac1
F tool/warnings-clang.sh f6aa929dc20ef1f856af04a730772f59283631d4
F tool/warnings.sh 0abfd78ceb09b7f7c27c688c8e3fe93268a13b32
F tool/win/sqlite.vsix deb315d026cc8400325c5863eef847784a219a2f
-P f7b2c70362f10ee0347c1d2318918ffefa53243d a34cd71c8aafaece04a2332a127e9b8e99c1403c
-R 83db81ff2fb6c9dcf1dbb41c52657424
-U dan
-Z 293899bbe176179f6b2abcd42b5d0831
+P 7b446771cadedafbe8924ad0658adc2597816dc7
+R e13907780a1cb22e147b44d8ea4a5351
+U drh
+Z 0da5f15a574d2a2ef40a9dda668b3442
-7b446771cadedafbe8924ad0658adc2597816dc7
\ No newline at end of file
+6ddef2ad35ceb5822fc14c65bc7c6a2662edb63c
\ No newline at end of file
} else {
set PROG "./sqlite3_analyzer"
}
+if {![file exe $PROG]} {
+ puts "analyzer1 cannot run because $PROG is not available"
+ finish_test
+ return
+}
db close
forcedelete test.db test.db-journal test.db-wal
sqlite3 db test.db
--- /dev/null
+#
+# May you do good and not evil.
+# May you find forgiveness for yourself and forgive others.
+# May you share freely, never taking more than you give.
+#
+#***********************************************************************
+# This file runs most of the tests run by veryquick.test except for those
+# that take a long time.
+#
+
+set testdir [file dirname $argv0]
+source $testdir/permutations.test
+
+run_test_suite extraquick
+
+finish_test
set alltests [test_set $alltests -exclude {
all.test async.test quick.test veryquick.test
memleak.test permutations.test soak.test fts3.test
- mallocAll.test rtree.test full.test
+ mallocAll.test rtree.test full.test extraquick.test
}]
set allquicktests [test_set $alltests -exclude {
lappend ::testsuitelist xxx
test_suite "veryquick" -prefix "" -description {
- "Very" quick test suite. Runs in less than 5 minutes on a workstation.
+ "Very" quick test suite. Runs in minutes on a workstation.
This test suite is the same as the "quick" tests, except that some files
that test malloc and IO errors are omitted.
} -files [
- test_set $allquicktests -exclude *malloc* *ioerr* *fault*
+ test_set $allquicktests -exclude *malloc* *ioerr* *fault* *bigfile*
+]
+
+test_suite "extraquick" -prefix "" -description {
+ "Extra" quick test suite. Runs in a few minutes on a workstation.
+ This test suite is the same as the "veryquick" tests, except that
+ slower tests are omitted.
+} -files [
+ test_set $allquicktests -exclude *malloc* *ioerr* *fault* *bigfile* \
+ wal3.test fts4merge* sort2.test mmap1.test walcrash* \
+ percentile.test where8m.test walcksum.test savepoint3.test \
+ fuzzer1.test fuzzer3.test fts3expr3.test
]
test_suite "mmap" -prefix "mm-" -description {
puts " --srcdir $::SRCDIR"
puts " --platform [list $platform]"
puts " --config [list $config]"
- if {$::QUICK} {puts " --quick"}
+ if {$::QUICK} {
+ if {$::QUICK==1} {puts " --quick"}
+ if {$::QUICK==2} {puts " --veryquick"}
+ }
if {$::MSVC} {puts " --msvc"}
if {$::BUILDONLY} {puts " --buildonly"}
if {$::DRYRUN} {puts " --dryrun"}
}
if {$target ne "checksymbols"} {
switch -- $::QUICK {
- 1 {set target test}
+ 1 {set target quicktest}
2 {set target smoketest}
}
if {$::BUILDONLY} {
} else {
set PROG "./sqldiff"
}
+if {![file exe $PROG]} {
+ puts "sqldiff cannot run because $PROG is not available"
+ finish_test
+ return
+}
db close
forcedelete test.db test2.db
sqlite3 db test.db