Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
Comment: | Modify 'th1' test file to run most of its tests outside of the Fossil source checkout using a new test suite infrastructure procedure. |
---|---|
Downloads: | Tarball | ZIP archive | SQL archive |
Timelines: | family | ancestors | descendants | both | trunk |
Files: | files | file ages | folders |
SHA1: |
7b9b5807f48f9e53b06d800ac488f78d |
User & Date: | mistachkin 2016-01-09 19:14:24 |
Context
2016-01-10
| ||
01:43 | More test fixes in the 'th1' test file. ... (check-in: 5d49329f user: mistachkin tags: trunk) | |
2016-01-09
| ||
19:14 | Modify 'th1' test file to run most of its tests outside of the Fossil source checkout using a new test suite infrastructure procedure. ... (check-in: 7b9b5807 user: mistachkin tags: trunk) | |
18:58 | Follow up to the previous check-in: save and restore the current directory. ... (check-in: d141b84a user: mistachkin tags: trunk) | |
Changes
Changes to test/tester.tcl.
︙ | ︙ | |||
19 20 21 22 23 24 25 26 27 28 29 30 31 32 | # # tclsh ../test/tester.tcl ../bld/fossil # # Where ../test/tester.tcl is the name of this file and ../bld/fossil # is the name of the executable to be tested. # set testrundir [pwd] set testdir [file normalize [file dir $argv0]] set fossilexe [file normalize [lindex $argv 0]] set argv [lrange $argv 1 end] set i [lsearch $argv -halt] if {$i>=0} { | > | 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 | # # tclsh ../test/tester.tcl ../bld/fossil # # Where ../test/tester.tcl is the name of this file and ../bld/fossil # is the name of the executable to be tested. # set testfiledir [file dirname [info script]] set testrundir [pwd] set testdir [file normalize [file dir $argv0]] set fossilexe [file normalize [lindex $argv 0]] set argv [lrange $argv 1 end] set i [lsearch $argv -halt] if {$i>=0} { |
︙ | ︙ | |||
186 187 188 189 190 191 192 193 194 195 196 197 198 199 | catch {exec $::fossilexe close -f} file delete $filename exec $::fossilexe new $filename exec $::fossilexe open $filename exec $::fossilexe clean -f exec $::fossilexe set mtime-changes off } # Normalize file status lists (like those returned by 'fossil changes') # so they can be compared using simple string comparison # proc normalize_status_list {list} { set normalized [list] set matches [regexp -all -inline -line {^\s*([A-Z_]+:?)\x20+(\S.*)$} $list] | > > > > > > > > > > > > > > > > > | 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 | catch {exec $::fossilexe close -f} file delete $filename exec $::fossilexe new $filename exec $::fossilexe open $filename exec $::fossilexe clean -f exec $::fossilexe set mtime-changes off } # This (rarely used) procedure is designed to run a test within the Fossil # source checkout (e.g. one that does NOT modify any state), while saving # and restoring the current directory (e.g. one used when running a test # file outside of the Fossil source checkout). Please do NOT use this # procedure unless you are absolutely sure it does not modify the state of # the repository or source checkout in any way. # proc run_in_checkout { script {dir ""} } { if {[string length $dir] == 0} {set dir $::testfiledir} set savedPwd [pwd]; cd $dir set code [catch { uplevel 1 $script } result] cd $savedPwd; unset savedPwd return -code $code $result } # Normalize file status lists (like those returned by 'fossil changes') # so they can be compared using simple string comparison # proc normalize_status_list {list} { set normalized [list] set matches [regexp -all -inline -line {^\s*([A-Z_]+:?)\x20+(\S.*)$} $list] |
︙ | ︙ |
Changes to test/th1.test.
︙ | ︙ | |||
14 15 16 17 18 19 20 | # http://www.hwaci.com/drh/ # ############################################################################ # # TH1 Commands # | | | 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 | # http://www.hwaci.com/drh/ # ############################################################################ # # TH1 Commands # set dir [file dirname [info script]]; repo_init ############################################################################### fossil test-th-eval --open-config "setting th1-hooks" set th1Hooks [expr {$RESULT eq "1"}] ############################################################################### |
︙ | ︙ | |||
637 638 639 640 641 642 643 | ############################################################################### fossil test-th-eval "styleHeader {Page Title Here}" test th1-header-1 {$RESULT eq {TH_ERROR: repository unavailable}} ############################################################################### | > | > > | 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 | ############################################################################### fossil test-th-eval "styleHeader {Page Title Here}" test th1-header-1 {$RESULT eq {TH_ERROR: repository unavailable}} ############################################################################### run_in_checkout { fossil test-th-eval --open-config "styleHeader {Page Title Here}" } test th1-header-2 {[regexp -- {<title>Fossil: Page Title Here</title>} $RESULT]} ############################################################################### fossil test-th-eval "styleFooter" test th1-footer-1 {$RESULT eq {TH_ERROR: repository unavailable}} |
︙ | ︙ | |||
720 721 722 723 724 725 726 | ############################################################################### fossil test-th-eval "artifact tip" test th1-artifact-2 {$RESULT eq {TH_ERROR: repository unavailable}} ############################################################################### | > | > > > | > > | 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759 760 761 762 763 | ############################################################################### fossil test-th-eval "artifact tip" test th1-artifact-2 {$RESULT eq {TH_ERROR: repository unavailable}} ############################################################################### run_in_checkout { fossil test-th-eval --open-config "artifact tip" } test th1-artifact-3 {[regexp -- {F test/th1\.test [0-9a-f]{40}} $RESULT]} ############################################################################### fossil test-th-eval "artifact 0000000000" test th1-artifact-4 {$RESULT eq {TH_ERROR: repository unavailable}} ############################################################################### fossil test-th-eval --open-config "artifact 0000000000" test th1-artifact-5 {$RESULT eq {TH_ERROR: name not found}} ############################################################################### fossil test-th-eval "artifact tip test/th1.test" test th1-artifact-6 {$RESULT eq {TH_ERROR: repository unavailable}} ############################################################################### run_in_checkout { fossil test-th-eval --open-config "artifact tip test/th1.test" } test th1-artifact-7 {[regexp -- {th1-artifact-7} $RESULT]} ############################################################################### fossil test-th-eval "artifact 0000000000 test/th1.test" test th1-artifact-8 {$RESULT eq {TH_ERROR: repository unavailable}} |
︙ | ︙ | |||
1258 1259 1260 1261 1262 1263 1264 | ############################################################################### # # TODO: Modify the result of this test if the source file (i.e. # "ajax/cgi-bin/fossil-json.cgi.example") changes. # | > | | > | 1267 1268 1269 1270 1271 1272 1273 1274 1275 1276 1277 1278 1279 1280 | ############################################################################### # # TODO: Modify the result of this test if the source file (i.e. # "ajax/cgi-bin/fossil-json.cgi.example") changes. # run_in_checkout { fossil test-th-eval --open-config \ {encode64 [artifact trunk ajax/cgi-bin/fossil-json.cgi.example]} } test th1-encode64-3 {$RESULT eq \ "IyEvcGF0aC90by9mb3NzaWwvYmluYXJ5CnJlcG9zaXRvcnk6IC9wYXRoL3RvL3JlcG8uZnNsCg=="} |