def test_set_group_ids(self): # test that _set_group_ids sets group_ids correctly sc = Shortcut() sc.actions = [ IfAction(data={ 'condition': 'equals', 'compare_with': 'test' }), IfAction(data={ 'condition': 'equals', 'compare_with': 'test' }), EndIfAction(data={}), ElseAction(data={}), # pass EndIfAction(data={}), ] # all actions are without group_id info assert any([a.data.get('group_id') for a in sc.actions]) is False sc._set_group_ids() # now all actions are with group_id info assert all([a.data.get('group_id') for a in sc.actions]) is True # first cycle check assert sc.actions[0].data['group_id'] == sc.actions[3].data[ 'group_id'] == sc.actions[4].data['group_id'] # second cycle assert sc.actions[1].data['group_id'] == sc.actions[2].data['group_id'] # ids are different assert sc.actions[0].data['group_id'] != sc.actions[1].data['group_id']
def test_set_group_ids_for_empty_shortcut(self): sc = Shortcut() assert len(sc.actions) == 0 sc._set_group_ids() assert len(sc.actions) == 0