diff options
author | John Christopher Anderson <jchris@apache.org> | 2010-02-03 17:29:41 +0000 |
---|---|---|
committer | John Christopher Anderson <jchris@apache.org> | 2010-02-03 17:29:41 +0000 |
commit | 6bebee4e85ba211212a9ed3b270077f050214911 (patch) | |
tree | f163dae43e519d34cc3cf8c7ae670f37974f4ff2 /share/www/script | |
parent | 7a1efddfb663068d8ee59ee8f6c655777d4aa662 (diff) |
enhance reader and admin lists
git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@906138 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'share/www/script')
-rw-r--r-- | share/www/script/test/reader_acl.js | 35 |
1 files changed, 29 insertions, 6 deletions
diff --git a/share/www/script/test/reader_acl.js b/share/www/script/test/reader_acl.js index 58f3d001..a5fc6a1a 100644 --- a/share/www/script/test/reader_acl.js +++ b/share/www/script/test/reader_acl.js @@ -50,6 +50,21 @@ couchTests.reader_acl = function(debug) { } CouchDB.logout(); + + // make top-secret an admin + T(secretDb.setDbProperty("_admins", { + roles : ["top-secret"], + names : []}).ok); + + T(CouchDB.login("jchris@apache.org", "funnybone").ok); + + T(secretDb.open("baz").foo == "bar"); + + CouchDB.logout(); + + T(secretDb.setDbProperty("_admins", { + roles : [], + names : []}).ok); // admin now adds the top-secret role to the db's readers T(CouchDB.session().userCtx.roles.indexOf("_admin") != -1); @@ -67,18 +82,26 @@ couchTests.reader_acl = function(debug) { // can't set non string reader names or roles try { - T(!secretDb.setDbProperty("_readers", { + secretDb.setDbProperty("_readers", { roles : ["super-secret-club", {"top-secret":"awesome"}], - names : ["joe","barb"]}).ok); + names : ["joe","barb"]}); T(false && "only string roles"); } catch (e) {} try { - T(!secretDb.setDbProperty("_readers", { - roles : ["super-secret-club", "top-secret"], - names : ["joe",22]}).ok); + secretDb.setDbProperty("_readers", { + roles : ["super-secret-club", "top-secret"], + names : ["joe",22]}); T(false && "only string names"); - } catch (e) {} + } catch (e) {} + + try { + secretDb.setDbProperty("_readers", { + roles : ["super-secret-club", "top-secret"], + names : "joe" + }); + T(false && "only lists of names"); + } catch (e) {} } finally { CouchDB.logout(); } |