Skip to content

Commit 0178803

Browse files
committed
Add basic API for _security object (fixes #238)
1 parent fe5bdf7 commit 0178803

File tree

2 files changed

+14
-0
lines changed

2 files changed

+14
-0
lines changed

couchdb/client.py

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -363,6 +363,14 @@ def name(self):
363363
self.info()
364364
return self._name
365365

366+
@property
367+
def security(self):
368+
return self.resource.get_json('_security')[2]
369+
370+
@security.setter
371+
def security(self, doc):
372+
self.resource.put_json('_security', body=doc)
373+
366374
def create(self, data):
367375
"""Create a new document in the database with a random ID that is
368376
generated by the server.

couchdb/tests/client.py

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -483,6 +483,12 @@ def test_json_encoding_error(self):
483483
doc = {'now': datetime.now()}
484484
self.assertRaises(TypeError, self.db.save, doc)
485485

486+
def test_security(self):
487+
security = self.db.security
488+
self.assertEqual(security, {})
489+
security['members'] = {'names': ['test'], 'roles': []}
490+
self.db.security = security
491+
486492

487493
class ViewTestCase(testutil.TempDatabaseMixin, unittest.TestCase):
488494

0 commit comments

Comments
 (0)