Skip to content

Commit 6797fbf

Browse files
committed
clearing all properties now, some additional enhancements
1 parent 8105a8e commit 6797fbf

File tree

4 files changed

+65
-32
lines changed

4 files changed

+65
-32
lines changed

riak/client/operations.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -89,15 +89,15 @@ def set_bucket_props(self, transport, bucket, props):
8989
"""
9090
return transport.set_bucket_props(bucket, props)
9191

92-
@retryableHttpOnly
93-
def clear_bucket_props(self, transport, bucket):
92+
def clear_bucket_props(self, bucket):
9493
"""
9594
Resets bucket properties for the given bucket.
9695
9796
:param bucket: the bucket whose properties will be set
9897
:type bucket: RiakBucket
9998
"""
100-
return transport.clear_bucket_props(bucket)
99+
with self._transport() as transport:
100+
return transport.clear_bucket_props(bucket)
101101

102102
@retryable
103103
def get_keys(self, transport, bucket):

riak/tests/test_all.py

Lines changed: 31 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,33 @@
4949
test_server.start()
5050

5151
testrun_search_bucket = None
52-
52+
testrun_props_bucket = None
53+
testrun_sibs_bucket = None
54+
55+
def setUpModule():
56+
global testrun_search_bucket, testrun_props_bucket, \
57+
testrun_sibs_bucket
58+
59+
c = RiakClient(transport='http', http_port=HTTP_PORT)
60+
61+
testrun_props_bucket = 'propsbucket'
62+
testrun_sibs_bucket = 'sibsbucket'
63+
c.bucket(testrun_sibs_bucket).allow_mult = True
64+
65+
if not int(os.environ.get('SKIP_SEARCH', '0')):
66+
testrun_search_bucket = 'searchbucket'
67+
b = c.bucket(testrun_search_bucket)
68+
b.enable_search()
69+
70+
def tearDownModule():
71+
c = RiakClient(transport='http', http_port=HTTP_PORT)
72+
if not int(os.environ.get('SKIP_SEARCH', '0')):
73+
b = c.bucket(testrun_search_bucket)
74+
b.clear_properties()
75+
b = c.bucket(testrun_sibs_bucket)
76+
b.clear_properties()
77+
b = c.bucket(testrun_props_bucket)
78+
b.clear_properties()
5379

5480
class BaseTestCase(object):
5581

@@ -80,16 +106,11 @@ def create_client(self, host=None, http_port=None, pb_port=None,
80106
pb_port=pb_port, **client_args)
81107

82108
def setUp(self):
83-
global testrun_search_bucket
84109
self.bucket_name = self.randname()
85110
self.key_name = self.randname()
86-
if not testrun_search_bucket:
87-
self.search_bucket = testrun_search_bucket = self.randname()
88-
c = self.create_client(HTTP_HOST, http_port=HTTP_PORT)
89-
b = c.bucket(self.search_bucket)
90-
b.enable_search()
91-
else:
92-
self.search_bucket = testrun_search_bucket
111+
self.search_bucket = testrun_search_bucket
112+
self.sibs_bucket = testrun_sibs_bucket
113+
self.props_bucket = testrun_props_bucket
93114

94115
self.client = self.create_client()
95116

@@ -171,7 +192,7 @@ def test_too_many_link_headers_shouldnt_break_http(self):
171192
self.assertEqual(len(stored_object.get_links()), 400)
172193

173194
def test_clear_bucket_properties(self):
174-
bucket = self.client.bucket('bucket')
195+
bucket = self.client.bucket(self.props_bucket)
175196
bucket.allow_mult = True
176197
self.assertTrue(bucket.allow_mult)
177198
bucket.n_val = 1

riak/tests/test_kv.py

Lines changed: 22 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22
import os
33
import cPickle
44
import copy
5+
56
try:
67
import simplejson as json
78
except ImportError:
@@ -168,18 +169,21 @@ def test_delete(self):
168169
self.assertFalse(obj.exists)
169170

170171
def test_set_bucket_properties(self):
171-
bucket = self.client.bucket(self.bucket_name)
172+
bucket = self.client.bucket(self.props_bucket)
172173
# Test setting allow mult...
173174
bucket.allow_mult = True
174-
self.assertTrue(bucket.allow_mult)
175175
# Test setting nval...
176-
bucket.n_val = 3
177-
self.assertEqual(bucket.n_val, 3)
176+
bucket.n_val = 1
177+
178+
bucket2 = self.create_client().bucket(self.props_bucket)
179+
self.assertTrue(bucket2.allow_mult)
180+
self.assertEqual(bucket2.n_val, 1)
178181
# Test setting multiple properties...
179182
bucket.set_properties({"allow_mult": False, "n_val": 2})
180183

181-
self.assertFalse(bucket.allow_mult)
182-
self.assertEqual(bucket.n_val, 2)
184+
bucket3 = self.create_client().bucket(self.props_bucket)
185+
self.assertFalse(bucket3.allow_mult)
186+
self.assertEqual(bucket3.n_val, 2)
183187

184188
def test_if_none_match(self):
185189
bucket = self.client.bucket(self.bucket_name)
@@ -197,9 +201,9 @@ def test_if_none_match(self):
197201

198202
def test_siblings(self):
199203
# Set up the bucket, clear any existing object...
200-
bucket = self.client.bucket(self.bucket_name)
201-
bucket.allow_mult = True
204+
bucket = self.client.bucket(self.sibs_bucket)
202205
obj = bucket.get_binary(self.key_name)
206+
bucket.allow_mult = True
203207

204208
# Even if it previously existed, let's store a base resolved version
205209
# from which we can diverge by sending a stale vclock.
@@ -210,7 +214,7 @@ def test_siblings(self):
210214
vals = set()
211215
for i in range(5):
212216
other_client = self.create_client()
213-
other_bucket = other_client.bucket(self.bucket_name)
217+
other_bucket = other_client.bucket(self.sibs_bucket)
214218
while True:
215219
randval = self.randint()
216220
if randval not in vals:
@@ -223,7 +227,7 @@ def test_siblings(self):
223227

224228
# Make sure the object has itself plus four siblings...
225229
obj.reload()
226-
self.assertTrue(bool(obj.siblings))
230+
#self.assertTrue(bool(obj.siblings))
227231
self.assertEqual(len(obj.siblings), 5)
228232

229233
# Get each of the values - make sure they match what was assigned
@@ -279,7 +283,7 @@ def test_list_buckets(self):
279283

280284
class HTTPBucketPropsTest(object):
281285
def test_rw_settings(self):
282-
bucket = self.client.bucket(self.bucket_name)
286+
bucket = self.client.bucket(self.props_bucket)
283287
self.assertEqual(bucket.r, "quorum")
284288
self.assertEqual(bucket.w, "quorum")
285289
self.assertEqual(bucket.dw, "quorum")
@@ -301,9 +305,10 @@ def test_rw_settings(self):
301305
'r': 'quorum',
302306
'dw': 'quorum',
303307
'rw': 'quorum'})
308+
bucket.clear_properties()
304309

305310
def test_primary_quora(self):
306-
bucket = self.client.bucket(self.bucket_name)
311+
bucket = self.client.bucket(self.props_bucket)
307312
self.assertEqual(bucket.pr, 0)
308313
self.assertEqual(bucket.pw, 0)
309314

@@ -314,11 +319,12 @@ def test_primary_quora(self):
314319
self.assertEqual(bucket.pw, "quorum")
315320

316321
bucket.set_properties({'pr': 0, 'pw': 0})
322+
bucket.clear_properties()
317323

318324

319325
class PbcBucketPropsTest(object):
320326
def test_rw_settings(self):
321-
bucket = self.client.bucket('rwsettings')
327+
bucket = self.client.bucket(self.props_bucket)
322328
with self.assertRaises(NotImplementedError):
323329
bucket.r
324330
with self.assertRaises(NotImplementedError):
@@ -336,9 +342,11 @@ def test_rw_settings(self):
336342
bucket.dw = 2
337343
with self.assertRaises(NotImplementedError):
338344
bucket.rw = 2
345+
with self.assertRaises(NotImplementedError):
346+
bucket.clear_properties()
339347

340348
def test_primary_quora(self):
341-
bucket = self.client.bucket('primary_quora')
349+
bucket = self.client.bucket(self.props_bucket)
342350
with self.assertRaises(NotImplementedError):
343351
bucket.pr
344352
with self.assertRaises(NotImplementedError):

riak/tests/test_search.py

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -17,19 +17,23 @@ def test_bucket_search_enabled(self):
1717

1818
@unittest.skipIf(SKIP_SEARCH, 'SKIP_SEARCH is defined')
1919
def test_enable_search_commit_hook(self):
20-
bucket = self.client.bucket(self.bucket_name)
20+
bucket = self.client.bucket(self.search_bucket)
21+
bucket.clear_properties()
22+
self.assertFalse(self.create_client().bucket(self.search_bucket).search_enabled())
2123
bucket.enable_search()
22-
self.assertTrue(self.client.bucket(self.bucket_name).search_enabled())
24+
self.assertTrue(self.create_client().bucket(self.search_bucket).search_enabled())
2325

2426
@unittest.skipIf(SKIP_SEARCH, 'SKIP_SEARCH is defined')
2527
def test_disable_search_commit_hook(self):
26-
bucket = self.client.bucket(self.bucket_name)
28+
bucket = self.client.bucket(self.search_bucket)
29+
bucket.clear_properties()
2730
bucket.enable_search()
28-
self.assertTrue(self.client.bucket(self.bucket_name)\
31+
self.assertTrue(self.create_client().bucket(self.search_bucket)\
2932
.search_enabled())
3033
bucket.disable_search()
31-
self.assertFalse(self.client.bucket(self.bucket_name)\
34+
self.assertFalse(self.create_client().bucket(self.search_bucket)\
3235
.search_enabled())
36+
bucket.enable_search()
3337

3438

3539
class SolrSearchTests(object):

0 commit comments

Comments
 (0)