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))
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_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_registry_clear(self): inline_names = ( 'echo1', 'echo2', ) registry.register(inline_names, BasicInline) registry.clear() self.__test_inlines_not_registered(inline_names)
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 }}'))
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)
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)
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))
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_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_already_registered(self): registry.register('echo', BasicInline) with self.assertRaises(registry.AlreadyRegistered): registry.register('echo', BasicInline)
def setUp(self): registry.register('echo_template', BasicTemplateInline)
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_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 test_register_media(self): registry.register( 'echo', BasicInline, media={'media': BasicMixInline})
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))