Example #1
0
 def test_fill_field(self):
     params = {"test_field": "test_data"}
     data = {
         "form": "test_form",
         "field": "test_field",
         "internal_form": "test_internal_form",
         "data_path": "{{test_field}}",
         "parametrizer": {
             "data": params
         }
     }
     action = CompositeFillFieldAction(data)
     user = PicklableMock()
     user.parametrizer = MockParametrizer(user, {"data": params})
     form = PicklableMock()
     internal_form = PicklableMock()
     form.forms = {"test_internal_form": internal_form}
     user.forms = {"test_form": form}
     field = PicklableMock()
     field.fill = PicklableMock()
     user.forms["test_form"].forms["test_internal_form"].fields = {
         "test_field": field
     }
     action.run(user, None)
     field.fill.assert_called_once_with(params["test_field"])
Example #2
0
 def test_template_req_raise(self):
     items = {"template": "{{ payload.groupCode }}"}
     requirement = TemplateRequirement(items)
     params = {"payload": {"groupCode": "BROKER1"}}
     user = PicklableMock()
     user.parametrizer = PicklableMock()
     user.parametrizer.collect = Mock(return_value=params)
     self.assertRaises(TypeError, requirement.check, None, user)
Example #3
0
 def test_template_req_false(self):
     items = {"template": "{{ payload.groupCode == 'BROKER' }}"}
     requirement = TemplateRequirement(items)
     params = {"payload": {"groupCode": "BROKER1"}}
     user = PicklableMock()
     user.parametrizer = PicklableMock()
     user.parametrizer.collect = Mock(return_value=params)
     self.assertFalse(requirement.check(None, user))
Example #4
0
 def setUpClass(cls):
     user = PicklableMock()
     user.message = PicklableMock()
     user.parametrizer = MockParametrizer(user, {})
     user.last_scenarios.last_scenario_name = "scenario_id"
     test_incremental_id = "test_incremental_id"
     user.message.incremental_id = test_incremental_id
     cls.user = user
Example #5
0
 def setUp(self):
     template = PicklableMock()
     template.get_template = Mock(return_value=[])
     user = PicklableMock()
     user.parametrizer = MockParametrizer(user, {})
     user.message = PicklableMock()
     user.person_info = PicklableMock()
     user.descriptions = {"render_templates": template}
     self.user = user
Example #6
0
 def setUp(self):
     user = PicklableMock()
     user.parametrizer = MockParametrizer(user, {})
     user.message = PicklableMock()
     user.message.payload = {"some_value": "some_value_test"}
     user.person_info = PicklableMock()
     user.variables = PicklableMagicMock()
     user.variables.delete = PicklableMock()
     self.user = user
Example #7
0
 def test_scenario_action_without_jinja(self):
     action = RunScenarioAction({"scenario": "next_scenario"})
     user = PicklableMock()
     user.parametrizer = MockParametrizer(user, {})
     scen = PicklableMock()
     scen_result = 'done'
     scen.run.return_value = scen_result
     user.descriptions = {"scenarios": {"next_scenario": scen}}
     result = action.run(user, PicklableMock())
     self.assertEqual(result, scen_result)
 def test_template_in_array_req_true(self):
     items = {
         "template": "{{ payload.userInfo.tbcode }}",
         "items": ["32", "33"]
     }
     requirement = TemplateInArrayRequirement(items)
     params = {"payload": {"userInfo": {"tbcode": "32"}, "message": "BBB"}}
     user = PicklableMock()
     user.parametrizer = PicklableMock()
     user.parametrizer.collect = Mock(return_value=params)
     self.assertTrue(requirement.check(None, user))
Example #9
0
 def mock_and_perform_action(
         test_items: Dict[str, Any],
         expected_result: Optional[str] = None,
         expected_scen: Optional[str] = None) -> Union[str, None]:
     action = ChoiceScenarioAction(test_items)
     user = PicklableMock()
     user.parametrizer = MockParametrizer(user, {})
     scen = PicklableMock()
     scen.run.return_value = expected_result
     if expected_scen:
         user.descriptions = {"scenarios": {expected_scen: scen}}
     return action.run(user, PicklableMock())
Example #10
0
    def test_scenario_action_with_jinja_good(self):
        params = {'next_scenario': 'ANNA.pipeline.scenario'}
        items = {"scenario": "{{next_scenario}}"}

        action = RunScenarioAction(items)
        user = PicklableMock()
        user.parametrizer = MockParametrizer(user, {"data": params})
        scen = PicklableMock()
        scen_result = 'done'
        scen.run.return_value = scen_result
        user.descriptions = {"scenarios": {"ANNA.pipeline.scenario": scen}}
        result = action.run(user, PicklableMock())
        self.assertEqual(result, scen_result)
Example #11
0
 def setUp(self):
     self.var_value = {
         "some_key_1": "some_value_1",
         "some_key_2": "some_value_2",
     }
     user = PicklableMock()
     user.parametrizer = MockParametrizer(user, {})
     user.message = PicklableMock()
     user.person_info = PicklableMock()
     user.variables = PicklableMagicMock()
     user.variables.values = self.var_value
     user.variables.clear = PicklableMock()
     self.user = user
Example #12
0
 def test_template_req_true(self):
     items = {
         "template": "{{ payload.message.strip() in payload.murexIds }}"
     }
     requirement = TemplateRequirement(items)
     params = {
         "payload": {
             "groupCode": "BROKER",
             "murexIds": ["AAA", "BBB"],
             "message": " BBB    "
         }
     }
     user = PicklableMock()
     user.parametrizer = PicklableMock()
     user.parametrizer.collect = Mock(return_value=params)
     self.assertTrue(requirement.check(None, user))
Example #13
0
 def test_fill_field(self):
     params = {"test_field": "test_data"}
     data = {
         "form": "test_form",
         "field": "test_field",
         "data_path": "{{test_field}}"
     }
     action = FillFieldAction(data)
     user = PicklableMock()
     user.parametrizer = MockParametrizer(user, {"data": params})
     user.forms = {"test_form": PicklableMock()}
     field = PicklableMock()
     field.fill = PicklableMock()
     user.forms["test_form"].fields = {"test_field": field}
     action.run(user, None)
     field.fill.assert_called_once_with(params["test_field"])
 def test_regexp_in_template_req_false(self):
     items = {
         "template": "{{ payload.message.strip() }}",
         "regexp": "(^|\s)[Фф](\.|-)?1(\-)?(у|У)?($|\s)"
     }
     requirement = RegexpInTemplateRequirement(items)
     params = {
         "payload": {
             "userInfo": {
                 "tbcode": "32",
             },
             "message": "карточки конг фу 1"
         }
     }
     user = PicklableMock()
     user.parametrizer = PicklableMock()
     user.parametrizer.collect = Mock(return_value=params)
     self.assertFalse(requirement.check(None, user))
 def test_array_in_template_req_true2(self):
     items = {
         "template": "{{ payload.message.strip() }}",
         "items": ["AAA", "BBB"]
     }
     requirement = ArrayItemInTemplateRequirement(items)
     params = {
         "payload": {
             "userInfo": {
                 "tbcode": "32",
                 "departcode": "123/2345/456"
             },
             "message": " BBB "
         }
     }
     user = PicklableMock()
     user.parametrizer = PicklableMock()
     user.parametrizer.collect = Mock(return_value=params)
     self.assertTrue(requirement.check(None, user))
 def test_array_in_template_req_false(self):
     items = {
         "template": {
             "type": "unified_template",
             "template":
             "{{ payload.userInfo.departcode.split('/')|tojson }}",
             "loader": "json"
         },
         "items": ["111", "222"]
     }
     requirement = ArrayItemInTemplateRequirement(items)
     params = {
         "payload": {
             "userInfo": {
                 "tbcode": "32",
                 "departcode": "123/2345/456"
             },
             "message": " BBB "
         }
     }
     user = PicklableMock()
     user.parametrizer = PicklableMock()
     user.parametrizer.collect = Mock(return_value=params)
     self.assertFalse(requirement.check(None, user))