Exemple #1
0
    def test_create(self):
        entity_name = 'testentity'
        context_name = 'contextname'
        context_type = ContextType.internal

        context = Context(name=context_name,
                          display_name=context_name,
                          type=context_type)

        self.add_entity(name=entity_name)

        created_context = context_dao.create(context)

        context_row = self.session.query(ContextSchema).filter(ContextSchema.name == context_name).first()

        assert_that(created_context, instance_of(Context))

        assert_that(context_row, all_of(
            has_property('name', context_name),
            has_property('displayname', context_name),
            has_property('entity', entity_name),
            has_property('contexttype', context_type),
            has_property('commented', 0),
            has_property('description', '')
        ))
Exemple #2
0
    def test_given_context_exists_then_returns_context_model(self):
        context_row = self.add_context()

        expected_context = Context(name=context_row.name,
                                   display_name=context_row.displayname,
                                   type=context_row.contexttype,
                                   description=context_row.description)

        result = context_dao.get(context_row.name)

        assert_that(result, equal_to(expected_context))
Exemple #3
0
    def test_given_extension_exists_then_returns_associated_context(self):
        context_row = self.add_context()
        extension_row = self.add_extension(context=context_row.name)

        expected_context = Context(name=context_row.name,
                                   display_name=context_row.displayname,
                                   type=context_row.contexttype,
                                   description=context_row.description)

        result = context_dao.find_by_extension_id(extension_row.id)

        assert_that(result, equal_to(expected_context))
Exemple #4
0
    def test_validate_create_context_already_exists(self, context_dao_get):
        context_name = 'test'

        existing_context = Mock(Context)
        existing_context.name = context_name

        context_dao_get.return_value = existing_context

        context = Context(name=context_name,
                          display_name=context_name,
                          type=ContextType.internal)

        self.assertRaises(ElementAlreadyExistsError, validator.validate_create,
                          context)

        context_dao_get.assert_called_once_with(context_name)
Exemple #5
0
    def test_send_bus_event_created(self, send_bus_command,
                                    CreateContextEvent):
        new_event = CreateContextEvent.return_value = Mock()

        context = Context(name='foo',
                          display_name='bar',
                          type='internal',
                          description='description')

        notifier.send_bus_event_created(context)

        CreateContextEvent.assert_called_once_with(context.name,
                                                   context.display_name,
                                                   context.description,
                                                   context.type)

        send_bus_command.assert_called_once_with(new_event)
Exemple #6
0
    def test_create(self, context_dao_create, validate_create, notifier_created):
        context_name = 'test'

        context = Context(name=context_name,
                          display_name=context_name,
                          type=ContextType.internal)

        context_dao_create.return_value = context

        result = context_services.create(context)

        validate_create.assert_called_once_with(context)
        context_dao_create.assert_called_once_with(context)
        notifier_created.assert_called_once_with(context)

        assert_that(result, all_of(
            has_property('name', context_name),
            has_property('display_name', context_name),
            has_property('type', ContextType.internal)))
Exemple #7
0
    def test_validate_create_invalid_type(self):
        context = Context(name='test', display_name='test', type='invalidtype')

        self.assertRaises(InvalidParametersError, validator.validate_create,
                          context)
Exemple #8
0
    def test_validate_create_empty_parameters(self):
        context = Context(name='', display_name='', type='')

        self.assertRaises(InvalidParametersError, validator.validate_create,
                          context)
Exemple #9
0
    def test_validate_create_missing_parameters(self):
        context = Context(display_name='Test')

        self.assertRaises(MissingParametersError, validator.validate_create,
                          context)
Exemple #10
0
    def test_validate_create_no_parameters(self):
        context = Context()

        self.assertRaises(MissingParametersError, validator.validate_create,
                          context)