def test_action_1(self): data = { "behavior": "test", "check_scenario": False, "command_action": { "command": "cmd_id", "nodes": {}, "request_data": {} } } registered_factories[Action] = action_factory actions["action_mock"] = MockAction self.user.parametrizer = MockParametrizer(self.user, {}) self.user.message = PicklableMock() local_vars = PicklableMock() local_vars.values = dict() self.user.local_vars = local_vars test_incremental_id = "test_incremental_id" self.user.message.incremental_id = test_incremental_id behavior = PicklableMock() behavior.check_got_saved_id = Mock(return_value=False) self.user.behaviors = behavior action = SelfServiceActionWithState(data) text_preprocessing_result_raw = PicklableMock() text_preprocessing_result = Mock(raw=text_preprocessing_result_raw) result = action.run(self.user, text_preprocessing_result, None) behavior.check_got_saved_id.assert_called_once() behavior.add.assert_called_once() self.assertEqual(result[0].name, "cmd_id") self.assertEqual(result[0].raw, { 'messageName': 'cmd_id', 'payload': {} })
def setUp(self): self.test_user1 = Mock('User') self.test_user1.message = Mock('Message') self.test_user1.descriptions = { "scenarios": { 11: 'any data 1', 12: 'any data 2' } } self.test_user1.last_scenarios = Mock('last scenario') self.test_user1.last_scenarios.last_scenario_name = 11 self.test_items = {"123-ASDF": {"command": [], "no_empty_nodes": True}} self.test_scenario1 = Mock('scenario') self.test_scenario1.scenario_description = "This is test scenario 1 desc" self.test_scenario1.form_type = "any type 1" self.test_user2 = Mock('User') self.test_user2.message = Mock('Message') self.test_user2.descriptions = {"scenarios": {22: self.test_scenario1}} self.test_user2.last_scenarios = Mock('last scenario') self.test_user2.last_scenarios.last_scenario_name = 22 self.test_user3 = Mock('User') self.test_user3.message = Mock('Message') self.test_user3.descriptions = {"scenarios": {22: self.test_scenario1}} self.test_user3.last_scenarios = Mock('last scenario') self.test_user3.last_scenarios.last_scenario_name = 33 self.test_forms = { 'any type 1': 'any form 1', 'any type 2': 'any form 2' } self.test_user4 = Mock('User') self.test_user4.forms = Mock('Forms') self.test_user4.forms.collect_form_fields = lambda: self.test_forms self.test_user4.message = TestMessage() self.test_user4.message.payload = "any payload" self.test_user4.message.uuid = "1234-5678-9102" self.test_user4.variables = Mock('Variables') self.test_user4.variables.values = [1, 2, 3] self.test_user4.counters = Mock('Counters') self.test_user4.counters.raw = 3 self.test_user4.descriptions = {"scenarios": {22: self.test_scenario1}} self.test_user4.last_scenarios = Mock('last scenario') self.test_user4.last_scenarios.last_scenario_name = 22 self.test_user4.gender_selector = PicklableMock() self.test_user4.gender_selector.get_text_by_key = '' self.test_user4.settings = {} local_vars = PicklableMock() local_vars.values = dict() self.test_user4.local_vars = local_vars self.test_text_preprocessing_result = Mock('text_preprocessing_result') self.test_text_preprocessing_result.raw = {1: "any text"}