|
1 | 1 | from splitio.storage import FlagSetsFilter |
| 2 | +from splitio.storage.inmemmory import FlagSets |
2 | 3 |
|
3 | 4 | class FlagSetsFilterTests(object): |
4 | 5 | """Flag sets filter storage tests.""" |
| 6 | + def test_without_initial_set(self): |
| 7 | + flag_set = FlagSets() |
| 8 | + assert flag_set.sets_feature_flag_map == {} |
| 9 | + |
| 10 | + flag_set.add_flag_set('set1') |
| 11 | + assert flag_set.get_flag_set('set1') == set({}) |
| 12 | + assert flag_set.flag_set_exist('set1') == True |
| 13 | + assert flag_set.flag_set_exist('set2') == False |
| 14 | + |
| 15 | + flag_set.add_feature_flag_to_flag_set('set1', 'split1') |
| 16 | + assert flag_set.get_flag_set('set1') == {'split1'} |
| 17 | + flag_set.add_feature_flag_to_flag_set('set1', 'split2') |
| 18 | + assert flag_set.get_flag_set('set1') == {'split1', 'split2'} |
| 19 | + flag_set.remove_feature_flag_to_flag_set('set1', 'split1') |
| 20 | + assert flag_set.get_flag_set('set1') == {'split2'} |
| 21 | + flag_set.remove_flag_set('set2') |
| 22 | + assert flag_set.sets_feature_flag_map == {'set1': set({'split2'})} |
| 23 | + flag_set.remove_flag_set('set1') |
| 24 | + assert flag_set.sets_feature_flag_map == {} |
| 25 | + assert flag_set.flag_set_exist('set1') == False |
| 26 | + |
| 27 | + def test_with_initial_set(self): |
| 28 | + flag_set = FlagSets(['set1', 'set2']) |
| 29 | + assert flag_set.sets_feature_flag_map == {'set1': set(), 'set2': set()} |
| 30 | + |
| 31 | + flag_set.add_flag_set('set1') |
| 32 | + assert flag_set.get_flag_set('set1') == set({}) |
| 33 | + assert flag_set.flag_set_exist('set1') == True |
| 34 | + assert flag_set.flag_set_exist('set2') == True |
| 35 | + |
| 36 | + flag_set.add_feature_flag_to_flag_set('set1', 'split1') |
| 37 | + assert flag_set.get_flag_set('set1') == {'split1'} |
| 38 | + flag_set.add_feature_flag_to_flag_set('set1', 'split2') |
| 39 | + assert flag_set.get_flag_set('set1') == {'split1', 'split2'} |
| 40 | + flag_set.remove_feature_flag_to_flag_set('set1', 'split1') |
| 41 | + assert flag_set.get_flag_set('set1') == {'split2'} |
| 42 | + flag_set.remove_flag_set('set2') |
| 43 | + assert flag_set.sets_feature_flag_map == {'set1': set({'split2'})} |
| 44 | + flag_set.remove_flag_set('set1') |
| 45 | + assert flag_set.sets_feature_flag_map == {} |
| 46 | + assert flag_set.flag_set_exist('set1') == False |
5 | 47 |
|
6 | 48 | def test_flag_set_filter(self): |
7 | 49 | flag_set_filter = FlagSetsFilter() |
|
0 commit comments