Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
Comment: | Have releasetest.tcl delete all test files except for "testfixture", "testfixture.exe", "sqlite3", "sqlite3.exe", "test.log" and "test-out.txt" after each test run is finished. Passing the "--keep" option restores the old behaviour. |
---|---|
Downloads: | Tarball | ZIP archive |
Timelines: | family | ancestors | descendants | both | trunk |
Files: | files | file ages | folders |
SHA1: |
e0e042dca98f29c060f76db079afecb3 |
User & Date: | dan 2016-09-12 09:28:21.479 |
Context
2016-09-12
| ||
13:32 | Add missing "finish_test" command to vacuum5.test. (check-in: 02f40c3b93 user: dan tags: trunk) | |
09:28 | Have releasetest.tcl delete all test files except for "testfixture", "testfixture.exe", "sqlite3", "sqlite3.exe", "test.log" and "test-out.txt" after each test run is finished. Passing the "--keep" option restores the old behaviour. (check-in: e0e042dca9 user: dan tags: trunk) | |
2016-09-10
| ||
19:51 | Changes to give a warning-free build with SQLITE_OMIT_INCRBLOB and SQLITE_OMIT_SHARED_CACHE. (check-in: 711c59171b user: drh tags: trunk) | |
Changes
Changes to test/releasetest.tcl.
︙ | ︙ | |||
11 12 13 14 15 16 17 18 19 20 21 22 23 24 | --buildonly (Just build testfixture - do not run) --config CONFIGNAME (Run only CONFIGNAME) --dryrun (Print what would have happened) -f|--force (Run even if uncommitted changes) --info (Show diagnostic info) --jobs N (Use N processes - default 1) --msvc (Use MSVC as the compiler) --platform PLATFORM (see below) --progress (Show progress messages) --quick (Run "veryquick.test" only) --veryquick (Run "make smoketest" only) --with-tcl=DIR (Use TCL build at DIR) | > | 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 | --buildonly (Just build testfixture - do not run) --config CONFIGNAME (Run only CONFIGNAME) --dryrun (Print what would have happened) -f|--force (Run even if uncommitted changes) --info (Show diagnostic info) --jobs N (Use N processes - default 1) --keep (Delete no files after each test run) --msvc (Use MSVC as the compiler) --platform PLATFORM (see below) --progress (Show progress messages) --quick (Run "veryquick.test" only) --veryquick (Run "make smoketest" only) --with-tcl=DIR (Use TCL build at DIR) |
︙ | ︙ | |||
463 464 465 466 467 468 469 | # The slave then runs the "configure && make test" commands specified. It # exits successfully if the tests passes, or with a non-zero error code # otherwise. # proc run_slave_test {} { # Read global vars configuration from stdin. set V [gets stdin] | | > | | 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 | # The slave then runs the "configure && make test" commands specified. It # exits successfully if the tests passes, or with a non-zero error code # otherwise. # proc run_slave_test {} { # Read global vars configuration from stdin. set V [gets stdin] foreach {::TRACE ::MSVC ::DRYRUN ::KEEPFILES} $V {} # Read the test-suite configuration from stdin. set T [gets stdin] foreach {title dir configOpts testtarget makeOpts cflags opts} $T {} # Create and switch to the test directory. set normaldir [file normalize $dir] set ::env(SQLITE_TMPDIR) $normaldir trace_cmd file mkdir $dir trace_cmd cd $dir catch {file delete core} catch {file delete test.log} # Run the "./configure && make" commands. set rc 0 |
︙ | ︙ | |||
493 494 495 496 497 498 499 500 501 502 503 504 505 506 | set rc [catch [makeCommand $testtarget $makeOpts $cflags $opts]] if {[info exists savedEnv(TCLSH_CMD)]} { set ::env(TCLSH_CMD) $savedEnv(TCLSH_CMD) } else { unset -nocomplain ::env(TCLSH_CMD) } } # Exis successfully if the test passed, or with a non-zero error code # otherwise. exit $rc } # This command is invoked in the master process each time a slave | > > > | 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 | set rc [catch [makeCommand $testtarget $makeOpts $cflags $opts]] if {[info exists savedEnv(TCLSH_CMD)]} { set ::env(TCLSH_CMD) $savedEnv(TCLSH_CMD) } else { unset -nocomplain ::env(TCLSH_CMD) } } # Clean up lots of extra files if --keep was not specified. if {$::KEEPFILES==0} { cleanup $normaldir } # Exis successfully if the test passed, or with a non-zero error code # otherwise. exit $rc } # This command is invoked in the master process each time a slave |
︙ | ︙ | |||
593 594 595 596 597 598 599 | # set tm1 [clock seconds] incr G(nJob) set script [file normalize [info script]] set fd [open "|[info nameofexecutable] $script --slave" r+] fconfigure $fd -blocking 0 fileevent $fd readable [list slave_fileevent $fd $T $tm1] | | | 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 | # set tm1 [clock seconds] incr G(nJob) set script [file normalize [info script]] set fd [open "|[info nameofexecutable] $script --slave" r+] fconfigure $fd -blocking 0 fileevent $fd readable [list slave_fileevent $fd $T $tm1] puts $fd [list $::TRACE $::MSVC $::DRYRUN $::KEEPFILES] puts $fd [list {*}$T] flush $fd } } } proc add_test_suite {listvar name testtarget config} { |
︙ | ︙ | |||
772 773 774 775 776 777 778 779 780 781 782 783 784 785 | set ::BUILDONLY 0 set ::DRYRUN 0 set ::TRACE 0 set ::JOBS 1 set ::PROGRESS_MSGS 0 set ::WITHTCL {} set ::FORCE 0 set config {} set platform $::tcl_platform(os)-$::tcl_platform(machine) for {set i 0} {$i < [llength $argv]} {incr i} { set x [lindex $argv $i] if {[regexp {^--[a-z]} $x]} {set x [string range $x 1 end]} switch -glob -- $x { | > | 777 778 779 780 781 782 783 784 785 786 787 788 789 790 791 | set ::BUILDONLY 0 set ::DRYRUN 0 set ::TRACE 0 set ::JOBS 1 set ::PROGRESS_MSGS 0 set ::WITHTCL {} set ::FORCE 0 set ::KEEPFILES 0 ;# Keep extra files after test run set config {} set platform $::tcl_platform(os)-$::tcl_platform(machine) for {set i 0} {$i < [llength $argv]} {incr i} { set x [lindex $argv $i] if {[regexp {^--[a-z]} $x]} {set x [string range $x 1 end]} switch -glob -- $x { |
︙ | ︙ | |||
869 870 871 872 873 874 875 876 877 878 879 880 881 882 | } exit } -g { lappend ::EXTRACONFIG [lindex $argv $i] } -with-tcl=* { set ::WITHTCL -$x } -D* - -O* - | > > > > | 875 876 877 878 879 880 881 882 883 884 885 886 887 888 889 890 891 892 | } exit } -g { lappend ::EXTRACONFIG [lindex $argv $i] } -keep { set ::KEEPFILES 1 } -with-tcl=* { set ::WITHTCL -$x } -D* - -O* - |
︙ | ︙ | |||
948 949 950 951 952 953 954 955 956 957 958 959 960 961 | puts "ERROR: The check-out contains uncommitted changes:" puts $res puts "Use the -f or --force options to override" exit 1 } cd $pwd } # Main routine. # proc main {argv} { # Process any command line options. | > > > > > > > > > > > > > > > > > > > > > > | 958 959 960 961 962 963 964 965 966 967 968 969 970 971 972 973 974 975 976 977 978 979 980 981 982 983 984 985 986 987 988 989 990 991 992 993 | puts "ERROR: The check-out contains uncommitted changes:" puts $res puts "Use the -f or --force options to override" exit 1 } cd $pwd } # A test run has just finished in directory $dir. This command deletes all # non-essential files from the directory. Specifically, everything except # # * The "testfixture" and "sqlite3" binaries, # * The "test-out.log" and "test.log" log files. # proc cleanup {dir} { set K(testfixture) 1 set K(testfixture.exe) 1 set K(sqlite3) 1 set K(sqlite3.exe) 1 set K(test-out.txt) 1 set K(test.log) 1 foreach f [glob -nocomplain [file join $dir *]] { set tail [file tail $f] if {[info exists K($tail)]==0} { file delete -force $f } } } # Main routine. # proc main {argv} { # Process any command line options. |
︙ | ︙ |