Skip to content

Commit d0a7dae

Browse files
committed
added pluggable tests
1 parent 2513d25 commit d0a7dae

File tree

2 files changed

+29
-29
lines changed

2 files changed

+29
-29
lines changed

splitio/storage/pluggable.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@
1717
class PluggableSplitStorageBase(SplitStorage):
1818
"""InMemory implementation of a feature flag storage."""
1919

20-
_FEATURE_FLAG_NAME_LENGTH = 12
20+
_FEATURE_FLAG_NAME_LENGTH = 19
2121

2222
def __init__(self, pluggable_adapter, prefix=None, config_flag_sets=[]):
2323
"""

tests/storage/test_pluggable.py

Lines changed: 28 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -255,9 +255,9 @@ def test_init(self):
255255
prefix = 'myprefix.'
256256
else:
257257
prefix = ''
258-
assert(pluggable_split_storage._prefix == prefix + "SPLITIO.split.{split_name}")
258+
assert(pluggable_split_storage._prefix == prefix + "SPLITIO.split.{feature_flag_name}")
259259
assert(pluggable_split_storage._traffic_type_prefix == prefix + "SPLITIO.trafficType.{traffic_type_name}")
260-
assert(pluggable_split_storage._split_till_prefix == prefix + "SPLITIO.splits.till")
260+
assert(pluggable_split_storage._feature_flag_till_prefix == prefix + "SPLITIO.splits.till")
261261

262262
# TODO: To be added when producer mode is aupported
263263
# def test_put_many(self):
@@ -282,7 +282,7 @@ def test_get(self):
282282
split1 = splits.from_raw(splits_json['splitChange1_2']['splits'][0])
283283
split_name = splits_json['splitChange1_2']['splits'][0]['name']
284284

285-
self.mock_adapter.set(pluggable_split_storage._prefix.format(split_name=split_name), split1.to_json())
285+
self.mock_adapter.set(pluggable_split_storage._prefix.format(feature_flag_name=split_name), split1.to_json())
286286
assert(pluggable_split_storage.get(split_name).to_json() == splits.from_raw(splits_json['splitChange1_2']['splits'][0]).to_json())
287287
assert(pluggable_split_storage.get('not_existing') == None)
288288

@@ -295,8 +295,8 @@ def test_fetch_many(self):
295295
split2_temp['name'] = 'another_split'
296296
split2 = splits.from_raw(split2_temp)
297297

298-
self.mock_adapter.set(pluggable_split_storage._prefix.format(split_name=split1.name), split1.to_json())
299-
self.mock_adapter.set(pluggable_split_storage._prefix.format(split_name=split2.name), split2.to_json())
298+
self.mock_adapter.set(pluggable_split_storage._prefix.format(feature_flag_name=split1.name), split1.to_json())
299+
self.mock_adapter.set(pluggable_split_storage._prefix.format(feature_flag_name=split2.name), split2.to_json())
300300
fetched = pluggable_split_storage.fetch_many([split1.name, split2.name])
301301
assert(fetched[split1.name].to_json() == split1.to_json())
302302
assert(fetched[split2.name].to_json() == split2.to_json())
@@ -334,8 +334,8 @@ def test_get_split_names(self):
334334
split2_temp = splits_json['splitChange1_2']['splits'][0].copy()
335335
split2_temp['name'] = 'another_split'
336336
split2 = splits.from_raw(split2_temp)
337-
self.mock_adapter.set(pluggable_split_storage._prefix.format(split_name=split1.name), split1.to_json())
338-
self.mock_adapter.set(pluggable_split_storage._prefix.format(split_name=split2.name), split2.to_json())
337+
self.mock_adapter.set(pluggable_split_storage._prefix.format(feature_flag_name=split1.name), split1.to_json())
338+
self.mock_adapter.set(pluggable_split_storage._prefix.format(feature_flag_name=split2.name), split2.to_json())
339339
assert(pluggable_split_storage.get_split_names() == [split1.name, split2.name])
340340

341341
def test_get_all(self):
@@ -347,8 +347,8 @@ def test_get_all(self):
347347
split2_temp['name'] = 'another_split'
348348
split2 = splits.from_raw(split2_temp)
349349

350-
self.mock_adapter.set(pluggable_split_storage._prefix.format(split_name=split1.name), split1.to_json())
351-
self.mock_adapter.set(pluggable_split_storage._prefix.format(split_name=split2.name), split2.to_json())
350+
self.mock_adapter.set(pluggable_split_storage._prefix.format(feature_flag_name=split1.name), split1.to_json())
351+
self.mock_adapter.set(pluggable_split_storage._prefix.format(feature_flag_name=split2.name), split2.to_json())
352352
all_splits = pluggable_split_storage.get_all()
353353
assert([all_splits[0].to_json(), all_splits[1].to_json()] == [split1.to_json(), split2.to_json()])
354354

@@ -419,9 +419,9 @@ def test_init(self):
419419
prefix = 'myprefix.'
420420
else:
421421
prefix = ''
422-
assert(pluggable_split_storage._prefix == prefix + "SPLITIO.split.{split_name}")
422+
assert(pluggable_split_storage._prefix == prefix + "SPLITIO.split.{feature_flag_name}")
423423
assert(pluggable_split_storage._traffic_type_prefix == prefix + "SPLITIO.trafficType.{traffic_type_name}")
424-
assert(pluggable_split_storage._split_till_prefix == prefix + "SPLITIO.splits.till")
424+
assert(pluggable_split_storage._feature_flag_till_prefix == prefix + "SPLITIO.splits.till")
425425

426426
@pytest.mark.asyncio
427427
async def test_get(self):
@@ -432,7 +432,7 @@ async def test_get(self):
432432
split1 = splits.from_raw(splits_json['splitChange1_2']['splits'][0])
433433
split_name = splits_json['splitChange1_2']['splits'][0]['name']
434434

435-
await self.mock_adapter.set(pluggable_split_storage._prefix.format(split_name=split_name), split1.to_json())
435+
await self.mock_adapter.set(pluggable_split_storage._prefix.format(feature_flag_name=split_name), split1.to_json())
436436
split = await pluggable_split_storage.get(split_name)
437437
assert(split.to_json() == splits.from_raw(splits_json['splitChange1_2']['splits'][0]).to_json())
438438
assert(await pluggable_split_storage.get('not_existing') == None)
@@ -447,8 +447,8 @@ async def test_fetch_many(self):
447447
split2_temp['name'] = 'another_split'
448448
split2 = splits.from_raw(split2_temp)
449449

450-
await self.mock_adapter.set(pluggable_split_storage._prefix.format(split_name=split1.name), split1.to_json())
451-
await self.mock_adapter.set(pluggable_split_storage._prefix.format(split_name=split2.name), split2.to_json())
450+
await self.mock_adapter.set(pluggable_split_storage._prefix.format(feature_flag_name=split1.name), split1.to_json())
451+
await self.mock_adapter.set(pluggable_split_storage._prefix.format(feature_flag_name=split2.name), split2.to_json())
452452
fetched = await pluggable_split_storage.fetch_many([split1.name, split2.name])
453453
assert(fetched[split1.name].to_json() == split1.to_json())
454454
assert(fetched[split2.name].to_json() == split2.to_json())
@@ -474,8 +474,8 @@ async def test_get_split_names(self):
474474
split2_temp = splits_json['splitChange1_2']['splits'][0].copy()
475475
split2_temp['name'] = 'another_split'
476476
split2 = splits.from_raw(split2_temp)
477-
await self.mock_adapter.set(pluggable_split_storage._prefix.format(split_name=split1.name), split1.to_json())
478-
await self.mock_adapter.set(pluggable_split_storage._prefix.format(split_name=split2.name), split2.to_json())
477+
await self.mock_adapter.set(pluggable_split_storage._prefix.format(feature_flag_name=split1.name), split1.to_json())
478+
await self.mock_adapter.set(pluggable_split_storage._prefix.format(feature_flag_name=split2.name), split2.to_json())
479479
assert(await pluggable_split_storage.get_split_names() == [split1.name, split2.name])
480480

481481
@pytest.mark.asyncio
@@ -488,8 +488,8 @@ async def test_get_all(self):
488488
split2_temp['name'] = 'another_split'
489489
split2 = splits.from_raw(split2_temp)
490490

491-
await self.mock_adapter.set(pluggable_split_storage._prefix.format(split_name=split1.name), split1.to_json())
492-
await self.mock_adapter.set(pluggable_split_storage._prefix.format(split_name=split2.name), split2.to_json())
491+
await self.mock_adapter.set(pluggable_split_storage._prefix.format(feature_flag_name=split1.name), split1.to_json())
492+
await self.mock_adapter.set(pluggable_split_storage._prefix.format(feature_flag_name=split2.name), split2.to_json())
493493
all_splits = await pluggable_split_storage.get_all()
494494
assert([all_splits[0].to_json(), all_splits[1].to_json()] == [split1.to_json(), split2.to_json()])
495495

@@ -1158,12 +1158,12 @@ def test_record_config(self):
11581158
pluggable_telemetry_storage = PluggableTelemetryStorage(self.mock_adapter, self.sdk_metadata, prefix=sprefix)
11591159
self.config = {}
11601160
self.extra_config = {}
1161-
def record_config_mock(config, extra_config):
1161+
def record_config_mock(config, extra_config, af, inf):
11621162
self.config = config
11631163
self.extra_config = extra_config
11641164

1165-
pluggable_telemetry_storage.record_config = record_config_mock
1166-
pluggable_telemetry_storage.record_config({'item': 'value'}, {'item2': 'value2'})
1165+
pluggable_telemetry_storage._tel_config.record_config = record_config_mock
1166+
pluggable_telemetry_storage.record_config({'item': 'value'}, {'item2': 'value2'}, 0, 0)
11671167
assert(self.config == {'item': 'value'})
11681168
assert(self.extra_config == {'item2': 'value2'})
11691169

@@ -1183,7 +1183,7 @@ def record_active_and_redundant_factories_mock(active_factory_count, redundant_f
11831183
self.active_factory_count = active_factory_count
11841184
self.redundant_factory_count = redundant_factory_count
11851185

1186-
pluggable_telemetry_storage.record_active_and_redundant_factories = record_active_and_redundant_factories_mock
1186+
pluggable_telemetry_storage._tel_config.record_active_and_redundant_factories = record_active_and_redundant_factories_mock
11871187
pluggable_telemetry_storage.record_active_and_redundant_factories(2, 1)
11881188
assert(self.active_factory_count == 2)
11891189
assert(self.redundant_factory_count == 1)
@@ -1249,7 +1249,7 @@ def test_push_config_stats(self):
12491249
'eventsPushRate': 60,
12501250
'metricsRefreshRate': 10,
12511251
'storageType': None
1252-
}, {}
1252+
}, {}, 0, 0
12531253
)
12541254
pluggable_telemetry_storage.record_active_and_redundant_factories(2, 1)
12551255
pluggable_telemetry_storage.push_config_stats()
@@ -1305,12 +1305,12 @@ async def test_record_config(self):
13051305
pluggable_telemetry_storage = await PluggableTelemetryStorageAsync.create(self.mock_adapter, self.sdk_metadata, prefix=sprefix)
13061306
self.config = {}
13071307
self.extra_config = {}
1308-
async def record_config_mock(config, extra_config):
1308+
async def record_config_mock(config, extra_config, tf, ifs):
13091309
self.config = config
13101310
self.extra_config = extra_config
13111311

1312-
pluggable_telemetry_storage.record_config = record_config_mock
1313-
await pluggable_telemetry_storage.record_config({'item': 'value'}, {'item2': 'value2'})
1312+
pluggable_telemetry_storage._tel_config.record_config = record_config_mock
1313+
await pluggable_telemetry_storage.record_config({'item': 'value'}, {'item2': 'value2'}, 0, 0)
13141314
assert(self.config == {'item': 'value'})
13151315
assert(self.extra_config == {'item2': 'value2'})
13161316

@@ -1332,7 +1332,7 @@ async def record_active_and_redundant_factories_mock(active_factory_count, redun
13321332
self.active_factory_count = active_factory_count
13331333
self.redundant_factory_count = redundant_factory_count
13341334

1335-
pluggable_telemetry_storage.record_active_and_redundant_factories = record_active_and_redundant_factories_mock
1335+
pluggable_telemetry_storage._tel_config.record_active_and_redundant_factories = record_active_and_redundant_factories_mock
13361336
await pluggable_telemetry_storage.record_active_and_redundant_factories(2, 1)
13371337
assert(self.active_factory_count == 2)
13381338
assert(self.redundant_factory_count == 1)
@@ -1401,7 +1401,7 @@ async def test_push_config_stats(self):
14011401
'eventsPushRate': 60,
14021402
'metricsRefreshRate': 10,
14031403
'storageType': None
1404-
}, {}
1404+
}, {}, 0, 0
14051405
)
14061406
await pluggable_telemetry_storage.record_active_and_redundant_factories(2, 1)
14071407
await pluggable_telemetry_storage.push_config_stats()

0 commit comments

Comments
 (0)