Fix remaining tests to use HTML-level comparison

pull/3242/merge
Matt Westcott 2017-02-27 21:08:01 +00:00 zatwierdzone przez Mikalai Radchuk
rodzic 68fa4dbea8
commit e17668521a
5 zmienionych plików z 44 dodań i 16 usunięć

Wyświetl plik

@ -695,12 +695,24 @@ class TestInlinePanel(TestCase, WagtailTestUtils):
self.assertIn('Choose an image', result)
# rendered panel must also contain hidden fields for id, DELETE and ORDER
self.assertIn('<input id="id_speakers-0-id" name="speakers-0-id" type="hidden"', result)
self.assertIn('<input id="id_speakers-0-DELETE" name="speakers-0-DELETE" type="hidden"', result)
self.assertIn('<input id="id_speakers-0-ORDER" name="speakers-0-ORDER" type="hidden"', result)
self.assertTagInHTML(
'<input id="id_speakers-0-id" name="speakers-0-id" type="hidden">',
result, allow_extra_attrs=True
)
self.assertTagInHTML(
'<input id="id_speakers-0-DELETE" name="speakers-0-DELETE" type="hidden">',
result, allow_extra_attrs=True
)
self.assertTagInHTML(
'<input id="id_speakers-0-ORDER" name="speakers-0-ORDER" type="hidden">',
result, allow_extra_attrs=True
)
# rendered panel must contain maintenance form for the formset
self.assertIn('<input id="id_speakers-TOTAL_FORMS" name="speakers-TOTAL_FORMS" type="hidden"', result)
self.assertTagInHTML(
'<input id="id_speakers-TOTAL_FORMS" name="speakers-TOTAL_FORMS" type="hidden">',
result, allow_extra_attrs=True
)
# rendered panel must include the JS initializer
self.assertIn('var panel = InlinePanel({', result)
@ -735,18 +747,30 @@ class TestInlinePanel(TestCase, WagtailTestUtils):
self.assertNotIn('<label for="id_speakers-0-last_name">Surname:</label>', result)
# test for #338: surname field should not be rendered as a 'stray' label-less field
self.assertNotIn('<input id="id_speakers-0-last_name"', result)
self.assertTagInHTML('<input id="id_speakers-0-last_name">', result, count=0, allow_extra_attrs=True)
self.assertIn('<label for="id_speakers-0-image">Image:</label>', result)
self.assertIn('Choose an image', result)
# rendered panel must also contain hidden fields for id, DELETE and ORDER
self.assertIn('<input id="id_speakers-0-id" name="speakers-0-id" type="hidden"', result)
self.assertIn('<input id="id_speakers-0-DELETE" name="speakers-0-DELETE" type="hidden"', result)
self.assertIn('<input id="id_speakers-0-ORDER" name="speakers-0-ORDER" type="hidden"', result)
self.assertTagInHTML(
'<input id="id_speakers-0-id" name="speakers-0-id" type="hidden">',
result, allow_extra_attrs=True
)
self.assertTagInHTML(
'<input id="id_speakers-0-DELETE" name="speakers-0-DELETE" type="hidden">',
result, allow_extra_attrs=True
)
self.assertTagInHTML(
'<input id="id_speakers-0-ORDER" name="speakers-0-ORDER" type="hidden">',
result, allow_extra_attrs=True
)
# rendered panel must contain maintenance form for the formset
self.assertIn('<input id="id_speakers-TOTAL_FORMS" name="speakers-TOTAL_FORMS" type="hidden"', result)
self.assertTagInHTML(
'<input id="id_speakers-TOTAL_FORMS" name="speakers-TOTAL_FORMS" type="hidden">',
result, allow_extra_attrs=True
)
# render_js_init must provide the JS initializer
self.assertIn('var panel = InlinePanel({', panel.render_js_init())

Wyświetl plik

@ -3335,7 +3335,9 @@ class TestChildRelationsOnSuperclass(TestCase, WagtailTestUtils):
self.assertContains(response, "id_advert_placements-TOTAL_FORMS")
# the formset should be populated with an existing form
self.assertContains(response, "id_advert_placements-0-advert")
self.assertContains(response, '<option value="1" selected="selected">test_advert</option>')
self.assertContains(
response, '<option value="1" selected="selected">test_advert</option>', html=True
)
def test_post_edit_form(self):
post_data = {

Wyświetl plik

@ -26,7 +26,7 @@ class TestAdminPageChooserWidget(TestCase):
widget = widgets.AdminPageChooser()
html = widget.render_html('test', None, {})
self.assertIn("<input name=\"test\" type=\"hidden\" />", html)
self.assertInHTML("""<input name="test" type="hidden" />""", html)
def test_render_js_init(self):
widget = widgets.AdminPageChooser()
@ -38,7 +38,7 @@ class TestAdminPageChooserWidget(TestCase):
widget = widgets.AdminPageChooser()
html = widget.render_html('test', self.child_page, {})
self.assertIn("<input name=\"test\" type=\"hidden\" value=\"%d\" />" % self.child_page.id, html)
self.assertInHTML("""<input name="test" type="hidden" value="%d" />""" % self.child_page.id, html)
def test_render_js_init_with_value(self):
widget = widgets.AdminPageChooser()

Wyświetl plik

@ -26,7 +26,8 @@ class TestPagePrivacy(TestCase):
self.assertContains(response, '<form action="%s"' % submit_url)
self.assertContains(
response,
'<input id="id_return_url" name="return_url" type="hidden" value="/secret-plans/" />'
'<input id="id_return_url" name="return_url" type="hidden" value="/secret-plans/" />',
html=True
)
# posting the wrong password should redisplay the password page
@ -60,7 +61,8 @@ class TestPagePrivacy(TestCase):
self.assertContains(response, '<form action="%s"' % submit_url)
self.assertContains(
response,
'<input id="id_return_url" name="return_url" type="hidden" value="/secret-plans/steal-underpants/" />'
'<input id="id_return_url" name="return_url" type="hidden" value="/secret-plans/steal-underpants/" />',
html=True
)
# posting the wrong password should redisplay the password page

Wyświetl plik

@ -742,13 +742,13 @@ class TestSnippetChooserBlock(TestCase):
block = SnippetChooserBlock(Advert, help_text="pick an advert, any advert")
empty_form_html = block.render_form(None, 'advert')
self.assertIn('<input id="advert" name="advert" placeholder="" type="hidden" />', empty_form_html)
self.assertInHTML('<input id="advert" name="advert" placeholder="" type="hidden" />', empty_form_html)
self.assertIn('createSnippetChooser("advert", "tests/advert");', empty_form_html)
test_advert = Advert.objects.get(text='test_advert')
test_advert_form_html = block.render_form(test_advert, 'advert')
expected_html = '<input id="advert" name="advert" placeholder="" type="hidden" value="%d" />' % test_advert.id
self.assertIn(expected_html, test_advert_form_html)
self.assertInHTML(expected_html, test_advert_form_html)
self.assertIn("pick an advert, any advert", test_advert_form_html)
def test_form_response(self):