Skip to content
Snippets Groups Projects
Commit 554d424f authored by ananyabalagere's avatar ananyabalagere
Browse files

pulling alexs tests

parent f7708e72
No related branches found
No related tags found
No related merge requests found
...@@ -101,14 +101,34 @@ def basic_shuffle(conductor: ClusterConductor, dir, log: Logger): ...@@ -101,14 +101,34 @@ def basic_shuffle(conductor: ClusterConductor, dir, log: Logger):
return True, "ok" return True, "ok"
def partitioned_shards(conductor: ClusterConductor, dir, log: Logger): def basic_shuffle_2(conductor: ClusterConductor, dir, log: Logger):
with KVSTestFixture(conductor, dir, log, node_count=4) as fx: with KVSTestFixture(conductor, dir, log, node_count=3) as fx:
### c = KVSMultiClient(fx.clients, "client", log)
# test 2 conductor.add_shard("shard1", conductor.get_nodes([0, 1]))
# partition the shards fx.broadcast_view(conductor.get_shard_view())
# put a bunch of keys
# we MUST probablistically encounter some hanging there. ## basic shuffle 2
# have a time out where if it doesnt hang after like 50 keys, then its just wrong. # view= 1 shard with 2 nodes
# put 50 keys
# get_all keys from shard 1
# add shard with 1 node
# get_all keys from shard 2
# get_all keys from shard 1
# check both returned sets are disjoint and that their union makes the original get_all results
node_to_put = 0
base_key = "key"
for i in range(0, 50):
r = c.put(node_to_put, f"{base_key}{i}", f"{i}", timeout=10)
assert r.ok, f"expected ok for new key, got {r.status_code}"
node_to_put += 1
node_to_put = node_to_put % 4
r = c.get_all(0, timeout=10) # should get all of shard 1's keys
assert r.ok, f"expected ok for get, got {r.status_code}"
original_get_all = r.json()["items"]
conductor.add_shard("shard2", conductor.get_nodes([2]))
return True, "ok" return True, "ok"
SHUFFLE_TESTS = [TestCase("shuffle_basic", basic_shuffle)] SHUFFLE_TESTS = [TestCase("shuffle_basic", basic_shuffle)]
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment