Hi,
I see that the actual implementation of load_response.tcl produces a
increasingly nested list when parsing multiple values for a given key. I've
corrected this by changing it to use concat instead of list (diff attached
to be run in rivet/rivet-tcl/). I also saw that no test files were present
for this command, so I wrote them too (attached load_response.rvt and
load_response.test to be copied in tests/).
When running the tests, it was quite annoying that the results from previous
tests was shown when a regexp didn't match. So I included set match "" all
over the place, so now it is more clear that the regexp didn't match. I
attached the diff also (tests.diff to be applied in tests/).
When time allows, I will be checking the other commands and their tests.
Till now all the I18n tests fail on my utf-8 encoding system.

Could someone check this and commit if it applies?

Thanks.

Cristian.
Index: load_response.tcl
===================================================================
--- load_response.tcl	(revision 526155)
+++ load_response.tcl	(working copy)
@@ -16,7 +16,7 @@
 
     foreach {var elem} [var all] {
         if {[info exists response($var)]} {
-            set response($var) [list $response($var) $elem]
+            set response($var) [concat $response($var) $elem]
         } else {
             set response($var) $elem
         }

Attachment: load_response.rvt
Description: Binary data

Attachment: load_response.test
Description: Binary data

Index: hello.test
===================================================================
--- hello.test	(revision 526155)
+++ hello.test	(working copy)
@@ -3,6 +3,7 @@
 set testfilename1 hello.rvt
 
 ::tcltest::test hello-1.1 {hello world test} {
+	set match ""
     set page [::http::geturl "${urlbase}$testfilename1"]
     regexp -line {^Hello, World$} [::http::data $page] match
     ::http::cleanup $page
@@ -10,6 +11,7 @@
 } {Hello, World}
 
 ::tcltest::test i18n-1.1 {I18N test} {
+	set match ""
     set page [::http::geturl "${urlbase}$testfilename1"]
     regexp -line {^¡ À È Ì Ò Ù - El Burro Sabe Más Que Tú!$} [::http::data $page] match
     ::http::cleanup $page
Index: headers.test
===================================================================
--- headers.test	(revision 526155)
+++ headers.test	(working copy)
@@ -9,9 +9,10 @@
 hdrs(User-Agent) = Tcl http client package $httpversion"
 
 ::tcltest::test headers-1.1 {load_headers test} {
+	set match ""
     set page [::http::geturl "${urlbase}$testfilename1"]
     regexp -all -lineanchor "(^hdrs.*?$\n){3}" [::http::data $page] match
     set match [string trim $match]
     ::http::cleanup $page
     set match
-} $result
\ No newline at end of file
+} $result
Index: makeurl.test
===================================================================
--- makeurl.test	(revision 526155)
+++ makeurl.test	(working copy)
@@ -3,6 +3,7 @@
 set testfilename1 makeurl.rvt
 
 ::tcltest::test makeurl-1.1 {makeurl} {
+	set match ""
     set page [ ::http::geturl "${urlbase}$testfilename1" ]
     set match [string trim [ ::http::data $page ]]
     set match
Index: get.test
===================================================================
--- get.test	(revision 526155)
+++ get.test	(working copy)
@@ -1,60 +1,70 @@
 # $Id$
 
 ::tcltest::test getvariables-1.1 {GET variables} {
+	set match ""
     set page [ ::http::geturl "${urlbase}get.rvt?foobar=goober" ]
     regexp -line {\[var get foobar\] = goober$} [ ::http::data $page ] match
     set match
 } {[var get foobar] = goober}
 
 ::tcltest::test getvariables-1.2 {GET variables - exists} {
+	set match ""
     set page [ ::http::geturl "${urlbase}get.rvt?xst=1" ]
     regexp -line {\[var exists xst\]\[var exists noxst\] = 1 0$} [ ::http::data $page ] match
     set match
 } {[var exists xst][var exists noxst] = 1 0}
 
 ::tcltest::test getvariables-1.3 {GET variables - doesn't exist} {
+	set match ""
     set page [ ::http::geturl "${urlbase}get.rvt" ]
     regexp -line {\[var get xst\] = } [ ::http::data $page ] match
     set match
 } {[var get xst] = }
 
 ::tcltest::test getvariables-1.4 {GET variables - default value} {
+	set match ""
     set page [ ::http::geturl "${urlbase}get.rvt?defaulttest=1" ]
     regexp {^\[var get xst foo\] = foo} [ ::http::data $page ] match
     set match
 } {[var get xst foo] = foo}
 
 ::tcltest::test getvariables-1.5 {GET variables - var_qs exists} {
+	set match ""
     set page [ ::http::geturl "${urlbase}get.rvt?xst=1" ]
     regexp -line {\[var_qs exists xst\]\[var_qs exists noxst\] = 1 0$} [ ::http::data $page ] match
     set match
 } {[var_qs exists xst][var_qs exists noxst] = 1 0}
 
 ::tcltest::test getvariables-2.1 {GET variables + I18N} {
+	set match ""
     set page [ ::http::geturl "${urlbase}get.rvt?Más=Tú" ]
     regexp -line {^\[var get Más\] = Tú$} [ ::http::data $page ] match
     set match
 } {[var get Más] = Tú}
 
 ::tcltest::test getvariables-2.2 {GET variables + I18N + encoding} {
+	set match ""
     set page [ ::http::geturl [ format "${urlbase}get.rvt?%s" [ ::http::formatQuery Más Tú ] ] ]
     regexp -line {^\[var get Más\] = Tú$} [ ::http::data $page ] match
     set match
 } {[var get Más] = Tú}
 
 ::tcltest::test getvariables-3.1 {GET multi-value variable} {
+	set match ""
     set page [ ::http::geturl "${urlbase}get.rvt?lstvar1=a&lstvar1=b&lstvar1=c+d" ]
     regexp -line {\[var get lstvar1\] = a b c d$} [ ::http::data $page ] match
     set match
 } {[var get lstvar1] = a b c d}
 
 ::tcltest::test getvariables-3.2 {GET multi-value variable as list} {
+	set match ""
     set page [ ::http::geturl "${urlbase}get.rvt?lstvar2=a&lstvar2=b&lstvar2=c+d" ]
     regexp -line {\[var list lstvar2\] = a b {c d}$} [ ::http::data $page ] match
     set match
 } {[var list lstvar2] = a b {c d}}
 
 ::tcltest::test getvariables-4.1 {var_qs} {
+	set match ""
     set page [ ::http::geturl "${urlbase}get.rvt?foobar=goober" ]
     regexp -line {\[var_qs get foobar\] = goober$} [ ::http::data $page ] match
     set match
Index: post.test
===================================================================
--- post.test	(revision 526155)
+++ post.test	(working copy)
@@ -3,36 +3,42 @@
 set testfilename1 post.rvt
 
 ::tcltest::test postvariables-1.1 {POST variables} {
+	set match ""
     set page [ ::http::geturl "${urlbase}$testfilename1" -query foobar=goober ]
     regexp -line {^\[var get foobar\] = goober$} [ ::http::data $page ] match
     set match
 } {[var get foobar] = goober}
 
 ::tcltest::test postvariables-2.1 {POST variables + I18N} {
+	set match ""
     set page [ ::http::geturl "${urlbase}$testfilename1" -query Más=Tú ]
     regexp -line {^\[var get Más\] = Tú$} [ ::http::data $page ] match
     set match
 } {[var get Más] = Tú}
 
 ::tcltest::test postvariables-2.2 {POST variables + I18N + encoding} {
+	set match ""
     set page [ ::http::geturl "${urlbase}$testfilename1" -query [ ::http::formatQuery Más Tú ] ]
     regexp -line {^\[var get Más\] = Tú$} [ ::http::data $page ] match
     set match
 } {[var get Más] = Tú}
 
 ::tcltest::test postvariables-3.1 {POST multi-value variable} {
+	set match ""
     set page [ ::http::geturl "${urlbase}get.rvt" -query [::http::formatQuery lstvar1 a lstvar1 b lstvar1 {c d}]]
     regexp -line {\[var get lstvar1\] = a b c d$} [ ::http::data $page ] match
     set match
 } {[var get lstvar1] = a b c d}
 
 ::tcltest::test postvariables-3.2 {POST multi-value variable as list} {
+	set match ""
     set page [ ::http::geturl "${urlbase}get.rvt" -query [::http::formatQuery lstvar2 a lstvar2 b lstvar2 {c d}]]
     regexp -line {\[var list lstvar2\] = a b {c d}$} [ ::http::data $page ] match
     set match
 } {[var list lstvar2] = a b {c d}}
 
 ::tcltest::test postvariables-4.1 {var_post} {
+	set match ""
     set page [ ::http::geturl "${urlbase}$testfilename1" -query foobar=goober ]
     regexp -line {^\[var_post get foobar\] = goober$} [ ::http::data $page ] match
     set match
Index: env.test
===================================================================
--- env.test	(revision 526155)
+++ env.test	(working copy)
@@ -3,6 +3,7 @@
 set testfilename1 env.rvt
 
 ::tcltest::test env-1.1 {Environment variable} {
+	set match ""
     set page [ ::http::geturl "${urlbase}$testfilename1" ]
     regexp -line "^env\\(DOCUMENT_NAME\\) = $testfilename1\$" [ ::http::data $page ] match
     set match
Index: rivet.test
===================================================================
--- rivet.test	(revision 526155)
+++ rivet.test	(working copy)
@@ -15,7 +15,7 @@
 
 # Use this to start and stop the server:
 
-set TestList {headers.test cookies.test get.test post.test tclfile.test env.test hello.test include.test binary.test parse.test upload.test makeurl.test}
+set TestList {headers.test cookies.test load_response.test get.test post.test tclfile.test env.test hello.test include.test binary.test parse.test upload.test makeurl.test}
 
 # Test stanzas are created by giving the test a name and a
 # description.  The code is then executed, and the results compared
Index: cookies.test
===================================================================
--- cookies.test	(revision 526155)
+++ cookies.test	(working copy)
@@ -3,18 +3,21 @@
 set testfilename1 cookies.rvt
 
 ::tcltest::test cookies-1.1 {Cookies} {
+	set match ""
     set page [::http::geturl "${urlbase}$testfilename1" -headers {Cookie "foo=bar"}]
     regexp -line {^cookies\(foo\) = bar$} [ ::http::data $page ] match
     set match
 } {cookies(foo) = bar}
 
 ::tcltest::test cookies-1.2 {Cookies + I18N} {
+	set match ""
     set page [::http::geturl "${urlbase}$testfilename1" -headers {Cookie "Más=Tú"}]
     regexp -line {^cookies\(Más\) = Tú$} [::http::data $page] match
     set match
 } {cookies(Más) = Tú}
 
 ::tcltest::test cookies-1.3 {Cookies + I18N + encoding} {
+	set match ""
     set page [ ::http::geturl "${urlbase}$testfilename1" -headers [ list Cookie [ ::http::formatQuery Más Tú ] ] ]
     regexp -line {^cookies\(Más\) = Tú$} [ ::http::data $page ] match
     set match
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to