| # $Id$ |
| |
| set testfilename1 config.rvt |
| |
| ::tcltest::test config-1.1 {ErrorScript config test} { |
| apachetest::start { |
| -c "RivetUserConf ErrorScript 'puts \"Page broken\"'" |
| } {} { |
| catch { |
| set page [::http::geturl "${urlbase}$testfilename1?brokenpage"] |
| set match [string trim [::http::data $page]] |
| ::http::cleanup $page |
| } |
| } |
| set match |
| } {Page broken} |
| |
| ::tcltest::test config-1.2 {ErrorScript config test} { |
| apachetest::start { |
| -c "RivetUserConf ErrorScript 'puts \"Page broken\"'" -c "AccessFileName test-htaccess" |
| } {} { |
| catch { |
| set page [::http::geturl "${urlbase}$testfilename1?brokenpage"] |
| set match [string trim [::http::data $page]] |
| ::http::cleanup $page |
| } |
| } |
| set match |
| } {Local Page Header |
| this page is BROKEN} |
| |
| ::tcltest::test config-2.1 {BeforeScript test} { |
| set fl [open htaccess2 w] |
| puts $fl {RivetUserConf BeforeScript 'puts "Local Page Header"'} |
| close $fl |
| apachetest::start { -c "AccessFileName htaccess2" } {} { |
| catch { |
| set page [::http::geturl "${urlbase}$testfilename1?goodpage"] |
| set match [string trim [::http::data $page]] |
| ::http::cleanup $page |
| # Now change what's in the ".htaccess" file, and see if it |
| # picks it up. |
| set fl [open htaccess2 w] |
| puts $fl {RivetUserConf BeforeScript 'puts "New Local Page Header"'} |
| close $fl |
| set page [::http::geturl "${urlbase}$testfilename1?goodpage"] |
| append match [string trim [::http::data $page]] |
| ::http::cleanup $page |
| } |
| } |
| set match |
| } {Local Page Header |
| Page BodyNew Local Page Header |
| Page Body} |
| |
| # List of all the configs to try |
| |
| set ConfigList { |
| {-c "RivetUserConf BeforeScript 'puts \"Page Header\"'"} |
| {-c "RivetUserConf BeforeScript 'puts \"Page Header\"'" -c "AccessFileName test-htaccess"} |
| {-c "RivetUserConf AfterScript 'puts \"Page Footer\"'"} |
| {-c "RivetUserConf AfterScript 'puts \"Page Footer\"'" -c "AccessFileName test-htaccess"} |
| {-D DIRTEST} |
| {-D DIRTEST -c "AccessFileName test-htaccess"} |
| {-D DIRTEST -D SERVERCONFTEST} |
| {-D SERVERCONFTEST -c "AccessFileName test-htaccess"} |
| {-D SERVERCONFTEST} |
| {-D DIRTEST -D SERVERCONFTEST -c "AccessFileName test-htaccess"} |
| } |
| |
| # Corresponding list of results we should get |
| |
| set ResultList { |
| {Page Header |
| Page Body} |
| |
| {Local Page Header |
| Page Body |
| Local Page Footer} |
| |
| {Page Body |
| Page Footer} |
| |
| {Local Page Header |
| Page Body |
| Local Page Footer} |
| |
| {Page Header |
| Page Body |
| Page Footer} |
| |
| {Local Page Header |
| Page Body |
| Local Page Footer} |
| |
| {Page Header |
| Page Body |
| Page Footer} |
| |
| {Local Page Header |
| Page Body |
| Local Page Footer} |
| |
| {Page Header |
| Page Body |
| Page Footer} |
| |
| {Local Page Header |
| Page Body |
| Local Page Footer} |
| } |
| |
| |
| set i 0 |
| foreach Config $ConfigList { |
| incr i |
| ::tcltest::test config-auto-${i}.1 {config test} { |
| apachetest::start $Config {} { |
| catch { |
| set page [::http::geturl "${urlbase}$testfilename1?goodpage"] |
| set match [string trim [::http::data $page]] |
| } |
| } |
| set match |
| } [lindex $ResultList [expr $i - 1]] |
| } |