def test_object_does_not_exist(self):
        registry.register('model', BasicModelInline)

        self.assertRaisesMessage(
            ValidationError,
            u'Inline `model 1`:  Object does not exist',
            renderer.render, u'{{ model 1 }}', None, True)
    def test_registration(self):
        registry.register('echo', BasicInline)
        registry.register(('echo1', 'echo2', 'echo3',), BasicInline)

        for inline in ('echo', 'echo1', 'echo2', 'echo3',):
            self.assertEqual(
                BasicInline, registry.get_registered_inline(inline))
Exemple #3
0
    def test_arg_validation_error(self):
        registry.register('model', BasicModelInline)

        self.assertRaisesMessage(
            ValidationError,
            u'Inline `model 1 2`:  Takes only 1 non-keyword argument '
            u'(2 given).', renderer.render, u'{{ model 1 2 }}', None, True)
    def test_registry_clear(self):
        inline_names = ('echo1', 'echo2',)
        registry.register(inline_names, BasicInline)

        registry.clear()

        self.__test_inlines_not_registered(inline_names)
    def test_arg_validation_error(self):
        registry.register('model', BasicModelInline)

        self.assertRaisesMessage(
            ValidationError,
            u'Inline `model 1 2`:  Takes only 1 non-keyword argument '
            u'(2 given).', renderer.render, u'{{ model 1 2 }}',
            None, True)
Exemple #6
0
    def test_template_render(self):
        registry.register('echo_markdown', MarkdownTemplateInline)

        self.assertEqual(
            u'**Hello**', renderer.render(
                u'{{ echo_markdown Hello }}', raise_errors=True))

        self.assertEqual(
            u'**HELLO**', renderer.render(
                u'{{ echo_markdown:upper Hello }}', raise_errors=True))
Exemple #7
0
    def test_registry_clear(self):
        inline_names = (
            'echo1',
            'echo2',
        )
        registry.register(inline_names, BasicInline)

        registry.clear()

        self.__test_inlines_not_registered(inline_names)
    def test_template_render(self):
        registry.register('echo_markdown', MarkdownTemplateInline)

        self.assertEqual(
            u'**Hello**', renderer.render(
                u'{{ echo_markdown Hello }}', raise_errors=True))

        self.assertEqual(
            u'**HELLO**', renderer.render(
                u'{{ echo_markdown:upper Hello }}', raise_errors=True))
    def test_missing_template_render(self):
        registry.register('echo_markdown', MarkdownTemplateInline)

        self.assertRaises(
            TemplateDoesNotExist, renderer.render,
            u'{{ echo_template arg1 }}', None, True)

        with self.settings(INLINE_DEBUG=False):
            self.assertEqual(
                u'**Hello**', renderer.render(
                    u'{{ echo_markdown Hello }}{{ echo_template: arg1 }}'))
Exemple #10
0
    def test_model_inline(self):
        registry.register('model', BasicModelInline)

        obj = InlineTestModel.objects.create(text='Test')

        self.assertEqual(u'Test', renderer.render(u'{{ model %s }}' % obj.pk))

        self.assertEqual(
            u'TEST',
            renderer.render(u'{{ model:upper %s }}' % obj.pk,
                            raise_errors=True))
    def test_model_inline(self):
        registry.register('model', BasicModelInline)

        obj = InlineTestModel.objects.create(text='Test')

        self.assertEqual(
            u'Test', renderer.render(u'{{ model %s }}' % obj.pk))

        self.assertEqual(
            u'TEST', renderer.render(
                u'{{ model:upper %s }}' % obj.pk, raise_errors=True))
    def test_unregister(self):
        inline_names = ('echo', 'echo1', 'echo2',)
        registry.register(inline_names, BasicInline)

        registry.unregister('echo')

        with self.assertRaises(registry.NotRegistered):
            registry.get_registered_inline('echo')

        registry.unregister(('echo1', 'echo2',))

        self.__test_inlines_not_registered(inline_names)
    def test_multiple_objects_returned(self):
        registry.register('model_multiple', MultipleModelInline)

        InlineTestModel.objects.bulk_create((
            InlineTestModel(text='Test'),
            InlineTestModel(text='Test'),))

        self.assertRaisesMessage(
            ValidationError,
            u'Inline `model_multiple Test`:  Multiple objects returned',
            renderer.render,
            u'{{ model_multiple Test }}', None, True)
Exemple #14
0
    def test_multiple_objects_returned(self):
        registry.register('model_multiple', MultipleModelInline)

        InlineTestModel.objects.bulk_create((
            InlineTestModel(text='Test'),
            InlineTestModel(text='Test'),
        ))

        self.assertRaisesMessage(
            ValidationError,
            u'Inline `model_multiple Test`:  Multiple objects returned',
            renderer.render, u'{{ model_multiple Test }}', None, True)
Exemple #15
0
    def test_model_template_inline(self):
        registry.register('model_template_inline', BasicModelTemplateInline)

        obj = InlineTestModel.objects.create(text='Test')

        self.assertEqual(
            u'**Test**',
            renderer.render(u'{{ model_template_inline %s }}' % obj.pk,
                            raise_errors=True))

        self.assertEqual(
            u'**TEST**',
            renderer.render(u'{{ model_template_inline:upper %s }}' % obj.pk,
                            raise_errors=True))
    def test_model_template_inline(self):
        registry.register('model_template_inline', BasicModelTemplateInline)

        obj = InlineTestModel.objects.create(text='Test')

        self.assertEqual(
            u'**Test**',
            renderer.render(
                u'{{ model_template_inline %s }}' % obj.pk, raise_errors=True))

        self.assertEqual(
            u'**TEST**',
            renderer.render(
                u'{{ model_template_inline:upper %s }}' % obj.pk,
                raise_errors=True))
Exemple #17
0
    def test_registration(self):
        registry.register('echo', BasicInline)
        registry.register((
            'echo1',
            'echo2',
            'echo3',
        ), BasicInline)

        for inline in (
                'echo',
                'echo1',
                'echo2',
                'echo3',
        ):
            self.assertEqual(BasicInline,
                             registry.get_registered_inline(inline))
    def test_media(self):
        registry.unregister('echo')

        registry.register(
            'echo', BasicInline, media={'mix_mod_4': BasicMixInline})

        self.assertEqual(
            u'ArG1 aRg2 KwArG1 kWaRg2',
            renderer.render(
                u'{{ echo:mix arg1 arg2 kwarg1=kwarg1 kwarg2=kwarg2 }}'))

        self.assertEqual(
            u'Arg1 arg2 kwArg1 kwaRg2',
            renderer.render(
                u'{{ echo:mix arg1 arg2 kwarg1=kwarg1 kwarg2=kwarg2 }}',
                media='mix_mod_4'))
    def test_media(self):
        registry.unregister('echo')

        registry.register(
            'echo', BasicInline, media={'mix_mod_4': BasicMixInline})

        self.assertEqual(
            u'ArG1 aRg2 KwArG1 kWaRg2',
            renderer.render(
                u'{{ echo:mix arg1 arg2 kwarg1=kwarg1 kwarg2=kwarg2 }}'))

        self.assertEqual(
            u'Arg1 arg2 kwArg1 kwaRg2',
            renderer.render(
                u'{{ echo:mix arg1 arg2 kwarg1=kwarg1 kwarg2=kwarg2 }}',
                media='mix_mod_4'))
Exemple #20
0
    def test_unregister(self):
        inline_names = (
            'echo',
            'echo1',
            'echo2',
        )
        registry.register(inline_names, BasicInline)

        registry.unregister('echo')

        with self.assertRaises(registry.NotRegistered):
            registry.get_registered_inline('echo')

        registry.unregister((
            'echo1',
            'echo2',
        ))

        self.__test_inlines_not_registered(inline_names)
Exemple #21
0
    def test_already_registered(self):
        registry.register('echo', BasicInline)

        with self.assertRaises(registry.AlreadyRegistered):
            registry.register('echo', BasicInline)
Exemple #22
0
 def setUp(self):
     registry.register('echo_template', BasicTemplateInline)
Exemple #23
0
    def test_object_does_not_exist(self):
        registry.register('model', BasicModelInline)

        self.assertRaisesMessage(ValidationError,
                                 u'Inline `model 1`:  Object does not exist',
                                 renderer.render, u'{{ model 1 }}', None, True)
Exemple #24
0
 def test_register_media(self):
     registry.register('echo', BasicInline, media={'media': BasicMixInline})
 def setUp(self):
     registry.register('echo', BasicInline)
 def test_exceptions(self):
     registry.register('none', BasicInlineParent)
     with self.settings(INLINE_DEBUG=False):
         self.assertEqual(u'', renderer.render('{{ echo }}'))
         self.assertEqual(u'', renderer.render('{{ none }}'))
 def setUp(self):
     registry.register('echo', BasicInline)
 def test_register_media(self):
     registry.register(
         'echo', BasicInline, media={'media': BasicMixInline})
 def setUp(self):
     registry.register('echo_template', BasicTemplateInline)
 def test_exceptions(self):
     registry.register('none', BasicInlineParent)
     self.assertEqual(u'', renderer.render('{{ echo }}', log_errors=False))
     self.assertEqual(u'', renderer.render('{{ none }}', log_errors=False))
    def test_already_registered(self):
        registry.register('echo', BasicInline)

        with self.assertRaises(registry.AlreadyRegistered):
            registry.register('echo', BasicInline)