def test_submit(self): """ Testing submit """ item = create_content_item(ContactFormItem, pk=2, form_style='default', email_to='*****@*****.**', success_message='Thanks!') # Submit, but not via the form button request = get_dummy_request('post', data={}) request.resolver_match = resolve('/admin/') output = render_content_items([item], request=request) self.assertTrue(output.html.count('name="contact2_submit"'), 1) # still displays form self.assertTrue('error' not in output.html) # no errors! # Submit, but not via the form button request = get_dummy_request('post', data={ 'contact2-name': "Test", 'contact2-email': '*****@*****.**', 'contact2-phone_number': '', 'contact2-subject': 'Test!', 'contact2-message': "Hello!", 'contact2_submit': "Submit", }) request.resolver_match = resolve('/admin/') self.assertRaises(HttpRedirectRequest, lambda: render_content_items([item], request=request)) self.assertTrue(request.session['contact2_submitted'])
def test_rendering(self): """ Test the standard button """ item = create_content_item({{ model }}, title="TEST1") output = render_content_items([item]) self.assertIn('TEST1', output.html)
def test_align_center(self): """ Test the center-align feature. """ item = create_content_item(ButtonItem, url='http://example.com', style='btn-default', title='TEST2', align='center') self.assertHTMLEqual( render_content_items([item]).html, u'<p class="text-center btn-center-wrapper"><a href="http://example.com" class="btn btn-default">TEST2</a></p>' )
def test_rendering(self): """ Test the standard button """ item = create_content_item(ContactFormItem, pk=1, form_style='default', email_to='*****@*****.**', success_message='Thanks!') output = render_content_items([item]) self.assertTrue(output.html.count('<form '), 1) # no helper! self.assertTrue(output.html.count('<input type="submit"'), 1) # button found! self.assertTrue(output.html.count('name="contact1_submit"'), 1) # button text self.assertEqual(str(item), '*****@*****.**')
def test_markup(self): RstItem = LANGUAGE_MODEL_CLASSES['restructuredtext'] item = create_content_item(RstItem, text=""" RST ---- * Markup!""") expected = '''<div class="markup"><h1 class="title">RST</h1><ul class="simple"><li>Markup!</li></ul></div>''' self.assertHTMLEqual(force_text(render_content_items([item])), expected)
def test_output(self): """ Test the standard teaser """ item = create_content_item(TeaserItem, url="http://example.com", title="TEST") self.assertHTMLEqual( render_content_items([item]).html, '<div class="teaser">' " <h2>TEST</h2>" ' <a href="http://example.com" class="readmore">more »</a>' "</div>", )
def test_submit(self): """ Testing submit """ item = create_content_item( ContactFormItem, pk=2, form_style="default", email_to="*****@*****.**", success_message="Thanks!", ) # Submit, but not via the form button request = get_dummy_request("post", data={}) request.resolver_match = resolve("/admin/") output = render_content_items([item], request=request) self.assertTrue(output.html.count('name="contact2_submit"'), 1) # still displays form self.assertTrue("error" not in output.html) # no errors! # Submit, but not via the form button request = get_dummy_request( "post", data={ "contact2-name": "Test", "contact2-email": "*****@*****.**", "contact2-phone_number": "", "contact2-subject": "Test!", "contact2-message": "Hello!", "contact2_submit": "Submit", }, ) request.resolver_match = resolve("/admin/") self.assertRaises( HttpRedirectRequest, lambda: render_content_items([item], request=request)) self.assertTrue(request.session["contact2_submitted"])
def test_primary(self): """ Test the standard button """ item = create_content_item( CountDownItem, title="Until 2030", until=datetime(2030, 1, 1, 10, 0, 0, tzinfo=timezone(timedelta(hours=5))), ) self.assertHTMLEqual( render_content_items([item]).html, '<div class="countdown" data-until="2030-01-01 05:00:00+00:00" data-expiry-text="null">' ' <p>Until 2030</p>' ' <span class="timer"></span>' '</div>' )
def test_markup(self): RstItem = LANGUAGE_MODEL_CLASSES["restructuredtext"] item = create_content_item( RstItem, text=""" RST ---- * Markup!""", ) expected = """<div class="markup"><h1 class="title">RST</h1><ul class="simple"><li>Markup!</li></ul></div>""" self.assertHTMLEqual(force_str(render_content_items([item])), expected)
def test_rendering(self): placeholder = create_placeholder() row = create_content_item(BootstrapRow, placeholder=placeholder) col1 = create_content_item(BootstrapColumn, placeholder=placeholder, parent_item=row, col_xs=6) col2 = create_content_item(BootstrapColumn, placeholder=placeholder, parent_item=row, col_xs=6, col_sm=12) text = create_content_item(RawHtmlTestItem, placeholder=placeholder, parent_item=col1, html='AA') text = create_content_item(RawHtmlTestItem, placeholder=placeholder, parent_item=col2, html='BB') items = placeholder.get_content_items() self.assertHTMLEqual(render_content_items(items).html, '' '<div class="row">' '<div class="col-xs-6">AA</div>' '<div class="col-sm-12 col-xs-6">BB</div>' '</div>')
def test_rendering(self): """ Test the standard button """ item = create_content_item(CookieLawItem, text="Do you like cookies?", button_text="Jummie!") output = render_content_items([item]) self.assertHTMLEqual(output.html, '''<div id="cookielaw-banner"> <div class="container"> <a class="btn" href="javascript:Cookielaw.accept();">Jummie!</a> Do you like cookies? </div> </div>''') self.assertHTMLEqual(str(output.media), '<script type="text/javascript" src="/static/fluentcms_cookielaw/js/cookielaw.js"></script>') self.assertEqual(str(item), 'Do you like cookies?')
def test_rendering(self): """ Test the standard button """ item = create_content_item( ContactFormItem, pk=1, form_style="default", email_to="*****@*****.**", success_message="Thanks!", ) output = render_content_items([item]) self.assertTrue(output.html.count("<form "), 1) # no helper! self.assertTrue(output.html.count('<input type="submit"'), 1) # button found! self.assertTrue(output.html.count('name="contact1_submit"'), 1) # button text self.assertEqual(str(item), "*****@*****.**")
def test_output(self): """ Test the standard picture """ file_obj = SimpleUploadedFile("file.jpg", b"file_content", content_type="image/jpeg") image, _ = Image.objects.get_or_create(file=DjangoFile(file_obj), defaults={"name": "file.jpg"}) item = create_content_item(PictureItem, image=image, caption="file.jpg") self.assertHTMLEqual( render_content_items([item]).html, '<figure class="picture ">' f'<img src="{item.image.url}" width="0.0" height="0.0" alt="" />' '<figcaption>file.jpg</figcaption>' '</figure>', )
def test_output(self): """ Test the standard file """ item = create_content_item(FileItem, file=SimpleUploadedFile( "file.jpg", b"file_content", content_type="image/jpeg"), name="file.jpg") self.assertHTMLEqual( render_content_items([item]).html, '<p class="file">' f'<a href="{item.file.url}">' '<span class="filename">' 'file.jpg<span class="filesize">' '(12 bytes)' '</span>' '</span>' '</a>' "</p>", )
def test_output(self): """ Test the standard file """ file_obj = SimpleUploadedFile("file.jpg", b"file_content", content_type="image/jpeg") image, _ = Image.objects.get_or_create(file=DjangoFile(file_obj), defaults={"name": "file.jpg"}) item = create_content_item(FileItem, file=image, name="file.jpg") self.assertHTMLEqual( render_content_items([item]).html, '<p class="file">' f'<a href="{item.file.url}">' '<span class="filename">' 'file.jpg<span class="filesize">' '(12 bytes)' '</span>' '</span>' '</a>' "</p>", )
def test_primary(self): """ Test the standard button """ item = create_content_item(ButtonItem, url='http://example.com', style='btn-primary', title='TEST') self.assertHTMLEqual(render_content_items([item]).html, u'<a href="http://example.com" class="btn btn-primary">TEST</a>')
def test_no_output(self): """ Test that the item doens't produce output. """ item = create_content_item(PrivateNotesItem, notes="HIDDEN-NOTES!") self.assertEqual(render_content_items([item]).html, u'')
def test_no_output(self): """ Test that the item doens't produce output. """ item = create_content_item(PrivateNotesItem, notes="HIDDEN-NOTES!") self.assertEqual(render_content_items([item]).html, u'')