From 0c198005f6a84d948e11354912bb6178f3f852eb Mon Sep 17 00:00:00 2001 From: John Christopher Anderson Date: Sat, 28 Feb 2009 00:04:10 +0000 Subject: supply etags for reduce view lists git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@748754 13f79535-47bb-0310-9956-ffa450edef68 --- share/www/script/test/list_views.js | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) (limited to 'share') diff --git a/share/www/script/test/list_views.js b/share/www/script/test/list_views.js index a25eed30..5469efd2 100644 --- a/share/www/script/test/list_views.js +++ b/share/www/script/test/list_views.js @@ -193,10 +193,28 @@ couchTests.list_views = function(debug) { T(/Key: 1/.test(xhr.responseText)); // when there is a reduce present, and used - var xhr = CouchDB.request("GET", "/test_suite_db/_list/lists/simpleForm/withReduce?group=true"); + xhr = CouchDB.request("GET", "/test_suite_db/_list/lists/simpleForm/withReduce?group=true"); T(xhr.status == 200); T(/Key: 1/.test(xhr.responseText)); + // there should be etags on reduce as well + var etag = xhr.getResponseHeader("etag"); + T(etag, "Etags should be served with reduce lists"); + xhr = CouchDB.request("GET", "/test_suite_db/_list/lists/simpleForm/withReduce?group=true", { + headers: {"if-none-match": etag} + }); + T(xhr.status == 304); + + // verify the etags expire correctly + var docs = makeDocs(11, 12); + var saveResult = db.bulkSave(docs); + T(saveResult.ok); + + xhr = CouchDB.request("GET", "/test_suite_db/_list/lists/simpleForm/withReduce?group=true", { + headers: {"if-none-match": etag} + }); + T(xhr.status == 200); + // with accept headers for HTML xhr = CouchDB.request("GET", "/test_suite_db/_list/lists/acceptSwitch/basicView", { headers: { -- cgit v1.2.3