class ConnectionSetTest(CouchbaseTestCase): def setUp(self): super(ConnectionSetTest, self).setUp() self.cb = Connection(self.host, self.port, self.username, self.password, self.bucket_prefix) def test_trivial_set(self): cas = self.cb.set('key_trivial1', 'value1') self.assertTrue(cas > 0) cas = self.cb.set('key_trivial2', 'value2') self.assertTrue(cas > 0) def test_set_with_cas(self): cas1 = self.cb.set('key_cas', 'value1') self.assertTrue(cas1 > 0) self.assertRaises(KeyExistsError, self.cb.set, 'key_cas', 'value2', cas=cas1+1) cas2 = self.cb.set('key_cas', 'value3', cas=cas1) self.assertTrue(cas2 > 0) self.assertNotEqual(cas2, cas1) cas3 = self.cb.set('key_cas', 'value4') self.assertTrue(cas3 > 0) self.assertNotEqual(cas3, cas2) self.assertNotEqual(cas3, cas1)
def test_multi_hosts(self): kwargs = { 'username' : self.username, 'password' : self.password, 'bucket' : self.bucket_prefix } cb = Connection(host=[self.host], **kwargs) self.assertTrue(cb.set("foo", "bar").success) cb = Connection(host=[(self.host, self.port)], **kwargs) self.assertTrue(cb.set("foo", "bar").success) cb = Connection(host=[('localhost', 1), (self.host, self.port)], **kwargs) self.assertTrue(cb.set("foo", "bar").success)
def test_multi_hosts(self): kwargs = { 'username': self.username, 'password': self.password, 'bucket': self.bucket_prefix } cb = Connection(host=[self.host], **kwargs) self.assertTrue(cb.set("foo", "bar").success) cb = Connection(host=[(self.host, self.port)], **kwargs) self.assertTrue(cb.set("foo", "bar").success) cb = Connection(host=[('localhost', 1), (self.host, self.port)], **kwargs) self.assertTrue(cb.set("foo", "bar").success)
def test_conncache(self): cachefile = None # On Windows, the NamedTemporaryFile is deleted right when it's # created. So we need to ensure it's not deleted, and delete it # ourselves when it's closed try: cachefile = tempfile.NamedTemporaryFile(delete=False) cb = Connection(conncache=cachefile.name, **self.make_connargs()) self.assertTrue(cb.set("foo", "bar").success) cb2 = Connection(conncache=cachefile.name, **self.make_connargs()) self.assertTrue(cb2.set("foo", "bar").success) self.assertEquals("bar", cb.get("foo").value) sb = os.stat(cachefile.name) # For some reason this fails on Windows? self.assertTrue(sb.st_size > 0) finally: # On windows, we can't delete if the file is still being used cachefile.close() os.unlink(cachefile.name)
def test_conncache(self): cachefile = None # On Windows, the NamedTemporaryFile is deleted right when it's # created. So we need to ensure it's not deleted, and delete it # ourselves when it's closed try: cachefile = tempfile.NamedTemporaryFile(delete=False) cb = Connection(conncache=cachefile.name, **self.make_connargs()) self.assertTrue(cb.set("foo", "bar").success) cb2 = Connection(conncache=cachefile.name, **self.make_connargs()) self.assertTrue(cb2.set("foo", "bar").success) self.assertEquals("bar", cb.get("foo").value) sb = os.stat(cachefile.name) # For some reason this fails on Windows? self.assertTrue(sb.st_size > 0) finally: # On windows, we can't delete if the file is still being used cachefile.close() os.unlink(cachefile.name)