Fix list HTTP header handling: Test Case.

Project: http://git-wip-us.apache.org/repos/asf/couchdb/repo
Commit: http://git-wip-us.apache.org/repos/asf/couchdb/commit/ac2240bc
Tree: http://git-wip-us.apache.org/repos/asf/couchdb/tree/ac2240bc
Diff: http://git-wip-us.apache.org/repos/asf/couchdb/diff/ac2240bc

Branch: refs/heads/430-fix-content-type-for-lists-after-get-row
Commit: ac2240bcebeee92acdb343f55e58435bce235194
Parents: 8e8501c
Author: Caleb Case <[email protected]>
Authored: Mon Nov 5 05:28:04 2012 -0500
Committer: Caleb Case <[email protected]>
Committed: Mon Nov 5 05:28:04 2012 -0500

----------------------------------------------------------------------
 share/www/script/test/list_views.js |   18 +++++++++++++++++-
 1 files changed, 17 insertions(+), 1 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/couchdb/blob/ac2240bc/share/www/script/test/list_views.js
----------------------------------------------------------------------
diff --git a/share/www/script/test/list_views.js 
b/share/www/script/test/list_views.js
index 4cd9edf..633afb4 100644
--- a/share/www/script/test/list_views.js
+++ b/share/www/script/test/list_views.js
@@ -159,7 +159,17 @@ couchTests.list_views = function(debug) {
       }),
       secObj: stringFun(function(head, req) {
         return toJSON(req.secObj);
-      })
+      }),
+      setHeaderAfterGotRow: stringFun(function(head, req) {
+        getRow();
+        start({
+          code: 400,
+          headers: {
+            "X-My-Header": "MyHeader"
+          }
+        });
+        send("bad request");
+      }),
     }
   };
   var viewOnlyDesignDoc = {
@@ -476,4 +486,10 @@ couchTests.list_views = function(debug) {
     }
   });
   TEquals(200, resp.status, "should return a 200 response");
+
+  // TEST HTTP header response set after getRow() called in _list function.
+  var xhr = CouchDB.request("GET", 
"/test_suite_db/_design/lists/_list/setHeaderAfterGotRow/basicView");
+  T(xhr.status == 400);
+  T(xhr.getResponseHeader("X-My-Header") == "MyHeader");
+  T(xhr.responseText.match(/^bad request$/));
 };

Reply via email to