def test_action_with_empty_last_scenario(self): scenario_name = "test_scenario" user = PicklableMock() user.forms = PicklableMock() user.forms.remove_item = PicklableMock() user.last_scenarios.last_scenario_name = None scenario = PicklableMock() scenario.form_type = scenario_name scenario.keep_forms_alive = False user.descriptions = {"scenarios": {scenario_name: scenario}} action = ClearCurrentScenarioFormAction({}) result = action.run(user, {}, {}) self.assertIsNone(result) user.forms.remove_item.assert_not_called()
def test_add_1(self): items = ["pay_phone_scenario"] forms = MagicMock(name="context_form_mock") forms.clear_form = self.remove_item user = PicklableMock() user.forms = forms pay_phone_scenario = PicklableMock() pay_phone_scenario.keep_forms_alive = False pay_phone_scenario.form_type = "pay_phone_scenario" user.descriptions = {"scenarios": ScenarioDescription({"pay_phone_scenario": pay_phone_scenario})} last_scenario_description = PicklableMock() last_scenario_description.get_count = Mock(return_value=1) ls = LastScenarios(items, last_scenario_description, user) new_scenario = "callcenter_scenario" ls.add(new_scenario, None) self.assertSequenceEqual(["callcenter_scenario"], ls.raw) self.assertSequenceEqual({"callcenter_scenario": {"remove_time": 2506421370}}, self.forms_dict)
def test_clear_all(self): items = ["pay_phone_scenario"] forms = MagicMock(name="context_form_mock") user = PicklableMock() user.forms = forms pay_phone_scenario = PicklableMock() pay_phone_scenario.keep_forms_alive = False user.descriptions = {"scenarios": {"pay_phone_scenario": pay_phone_scenario}} last_scenario_description = PicklableMock() last_scenario_description.check = Mock(return_value=True) last_scenario_description.get_count = Mock(return_value=2) ls = LastScenarios(items, last_scenario_description, user) new_scenario = "callcenter_scenario" ls.add(new_scenario, None) ls.clear_all() self.assertSequenceEqual([], ls.raw)
def test_add_3(self): items = ["pay_phone_scenario"] forms = MagicMock(name="context_form_mock") user = PicklableMock() user.forms = forms pay_phone_scenario = PicklableMock() pay_phone_scenario.keep_forms_alive = True user.descriptions = {"scenarios": ScenarioDescription({"pay_phone_scenario": pay_phone_scenario})} last_scenario_description = PicklableMock() last_scenario_description.check = Mock(return_value=True) last_scenario_description.get_count = Mock(return_value=1) ls = LastScenarios(items, last_scenario_description, user) new_scenario = "callcenter_scenario" ls.add(new_scenario, None) correct_result = {'pay_phone_scenario': {'fields': {'amount': {'value': 100.0}, 'approve': {'available': True, 'value': True}}, 'remove_time': 1506418333}, 'callcenter_scenario': {'remove_time': 2506421370}} self.assertSequenceEqual(["callcenter_scenario"], ls.raw) self.assertSequenceEqual(correct_result, self.forms_dict)
def test_add_2(self): items = ["pay_phone_scenario"] forms = MagicMock(name="context_form_mock") user = PicklableMock() user.forms = forms pay_phone_scenario = PicklableMock() pay_phone_scenario.keep_forms_alive = False user.descriptions = {"scenarios": {"pay_phone_scenario": pay_phone_scenario}} last_scenario_description = PicklableMock() last_scenario_description.get_count = Mock(return_value=2) ls = LastScenarios(items, last_scenario_description, user) new_scenario = "callcenter_scenario" ls.add(new_scenario, None) self.assertSequenceEqual(["pay_phone_scenario", "callcenter_scenario"], ls.raw) self.assertSequenceEqual({"pay_phone_scenario": {"fields": {"amount": {"value": 100.0}, "approve": {"available": True, "value": True}}, "remove_time": 1506418333}, "callcenter_scenario": {"remove_time": 2506421370}}, self.forms_dict)