diff options
Diffstat (limited to 'share/www')
-rw-r--r-- | share/www/script/couch.js | 13 | ||||
-rw-r--r-- | share/www/script/test/design_docs.js | 14 |
2 files changed, 26 insertions, 1 deletions
diff --git a/share/www/script/couch.js b/share/www/script/couch.js index 8f3d96ad..c4c1ae9f 100644 --- a/share/www/script/couch.js +++ b/share/www/script/couch.js @@ -177,6 +177,19 @@ function CouchDB(name, httpHeaders) { return JSON.parse(this.last_req.responseText); } + // gets information about a design doc + this.designInfo = function(docid) { + this.last_req = this.request("GET", this.uri + docid + "/_info"); + CouchDB.maybeThrowError(this.last_req); + return JSON.parse(this.last_req.responseText); + } + + this.viewCleanup = function() { + this.last_req = this.request("POST", this.uri + "_view_cleanup"); + CouchDB.maybeThrowError(this.last_req); + return JSON.parse(this.last_req.responseText); + } + this.allDocs = function(options,keys) { if(!keys) { this.last_req = this.request("GET", this.uri + "_all_docs" + encodeOptions(options)); diff --git a/share/www/script/test/design_docs.js b/share/www/script/test/design_docs.js index 8f003efa..b1ff8432 100644 --- a/share/www/script/test/design_docs.js +++ b/share/www/script/test/design_docs.js @@ -49,6 +49,14 @@ function() { } T(db.save(designDoc).ok); + // test that we get design doc info back + var dinfo = db.designInfo("_design/test"); + TEquals("test", dinfo.name); + var vinfo = dinfo.view_index; + TEquals(51, vinfo.disk_size); + TEquals(false, vinfo.compact_running); + TEquals("64625dce94960fd5ca116e42aa9d011a", vinfo.signature); + db.bulkSave(makeDocs(1, numDocs + 1)); // test that the _all_docs view returns correctly with keys @@ -66,7 +74,7 @@ function() { T(db.ensureFullCommit().ok); restartServer(); }; - + // test when language not specified, Javascript is implied var designDoc2 = { _id:"_design/test2", @@ -110,5 +118,9 @@ function() { restartServer(); T(db.open(designDoc._id) == null); T(db.view("test/no_docs") == null); + + // trigger ddoc cleanup + T(db.viewCleanup().ok); + }); }; |