diff options
author | Jan Lehnardt <jan@apache.org> | 2010-11-14 23:16:35 +0000 |
---|---|---|
committer | Jan Lehnardt <jan@apache.org> | 2010-11-14 23:16:35 +0000 |
commit | 856d5b1ed17ad621543c2ef0d6d369dee9f206b0 (patch) | |
tree | 0c683be940d314731cfec59f3b6682e72208ec33 /share | |
parent | 341a4fc4f95b81c2c948666308e2856f8060f300 (diff) |
Allow reduce=false parameter in map-only views.
Patch by Jason Smith.
Closes COUCHDB-881.
git-svn-id: https://svn.apache.org/repos/asf/couchdb/branches/1.0.x@1035098 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'share')
-rw-r--r-- | share/www/script/test/view_errors.js | 25 |
1 files changed, 22 insertions, 3 deletions
diff --git a/share/www/script/test/view_errors.js b/share/www/script/test/view_errors.js index a211c061..c05000b7 100644 --- a/share/www/script/test/view_errors.js +++ b/share/www/script/test/view_errors.js @@ -74,9 +74,6 @@ couchTests.view_errors = function(debug) { T(e.error == "query_parse_error"); } - // reduce=false on map views doesn't work, so group=true will - // never throw for temp reduce views. - var designDoc = { _id:"_design/test", language: "javascript", @@ -104,6 +101,15 @@ couchTests.view_errors = function(debug) { db.view("test/no_reduce", {group: true}); T(0 == 1); } catch(e) { + T(db.last_req.status == 400); + T(e.error == "query_parse_error"); + } + + try { + db.view("test/no_reduce", {group_level: 1}); + T(0 == 1); + } catch(e) { + T(db.last_req.status == 400); T(e.error == "query_parse_error"); } @@ -115,10 +121,23 @@ couchTests.view_errors = function(debug) { T(e.error == "query_parse_error"); } + db.view("test/no_reduce", {reduce: false}); + TEquals(200, db.last_req.status, "reduce=false for map views (without" + + " group or group_level) is allowed"); + try { db.view("test/with_reduce", {group: true, reduce: false}); T(0 == 1); } catch(e) { + T(db.last_req.status == 400); + T(e.error == "query_parse_error"); + } + + try { + db.view("test/with_reduce", {group_level: 1, reduce: false}); + T(0 == 1); + } catch(e) { + T(db.last_req.status == 400); T(e.error == "query_parse_error"); } |