def test_custom_protocol_enabled(self):
     settings.TEXT_ADDITIONAL_PROTOCOLS = ('rtmp',)
     parser = html._get_default_parser()
     text = html.clean_html('''<source src="rtmp://testurl.com/">''',
                            full=False,
                            parser=parser)
     self.assertEqual('''<source src="rtmp://testurl.com/">''', text)
Пример #2
0
 def test_default_protocol_escaping(self):
     settings.TEXT_ADDITIONAL_PROTOCOLS = []
     parser = html._get_default_parser()
     text = html.clean_html(
         '<source src="rtmp://testurl.com/">',
         full=False,
         parser=parser,
     )
     self.assertEqual('<source>', text)
Пример #3
0
 def test_default_protocol_escaping(self):
     settings.TEXT_ADDITIONAL_PROTOCOLS = []
     parser = html._get_default_parser()
     text = html.clean_html(
         '<source src="rtmp://testurl.com/">',
         full=False,
         parser=parser,
     )
     self.assertEqual('<source>', text)
Пример #4
0
 def test_default_tag_escaping(self):
     settings.TEXT_ADDITIONAL_TAGS = []
     parser = html._get_default_parser()
     text = html.clean_html(
         '<iframe src="rtmp://testurl.com/"></iframe>',
         full=False,
         parser=parser,
     )
     self.assertEqual(
         '&lt;iframe src="rtmp://testurl.com/"&gt;&lt;/iframe&gt;',
         text,
     )
Пример #5
0
 def test_custom_attribute_enabled(self):
     settings.TEXT_ADDITIONAL_ATTRIBUTES = ['test-attr']
     parser = html._get_default_parser()
     text = html.clean_html(
         '<span test-attr="2">foo</span>',
         full=False,
         parser=parser,
     )
     self.assertEqual(
         '<span test-attr="2">foo</span>',
         text,
     )
Пример #6
0
 def test_custom_tag_enabled(self):
     settings.TEXT_ADDITIONAL_TAGS = ['iframe']
     parser = html._get_default_parser()
     text = html.clean_html(
         '<iframe src="rtmp://testurl.com/"></iframe>',
         full=False,
         parser=parser,
     )
     self.assertEqual(
         '<iframe src="rtmp://testurl.com/"></iframe>',
         text,
     )
Пример #7
0
 def test_default_tag_escaping(self):
     settings.TEXT_ADDITIONAL_TAGS = []
     parser = html._get_default_parser()
     text = html.clean_html(
         '<iframe src="rtmp://testurl.com/"></iframe>',
         full=False,
         parser=parser,
     )
     self.assertEqual(
         '&lt;iframe src="rtmp://testurl.com/"&gt;&lt;/iframe&gt;',
         text,
     )
Пример #8
0
 def test_custom_attribute_enabled(self):
     settings.TEXT_ADDITIONAL_ATTRIBUTES = ['test-attr']
     parser = html._get_default_parser()
     text = html.clean_html(
         '<span test-attr="2">foo</span>',
         full=False,
         parser=parser,
     )
     self.assertEqual(
         '<span test-attr="2">foo</span>',
         text,
     )
Пример #9
0
 def test_custom_tag_enabled(self):
     settings.TEXT_ADDITIONAL_TAGS = ['iframe']
     parser = html._get_default_parser()
     text = html.clean_html(
         '<iframe src="rtmp://testurl.com/"></iframe>',
         full=False,
         parser=parser,
     )
     self.assertEqual(
         '<iframe src="rtmp://testurl.com/"></iframe>',
         text,
     )
 def test_text_sanitizer_no_settings(self):
     settings.ALLOW_TOKEN_PARSERS = []
     html.DEFAULT_PARSER = html._get_default_parser()
     page = create_page(title='home', template='page.html', language='en')
     add_plugin(
         page.placeholders.get(slot='content'), 'TextPlugin', 'en',
         body='<span data-one="1" data-two="2">some text</span>'
     )
     language = 'en'
     page.publish(language)
     url = page.get_absolute_url(language)
     response = self.client.get(url)
     self.assertContains(response, '<span>some text</span>')
Пример #11
0
 def test_text_sanitizer_no_settings(self):
     settings.ALLOW_TOKEN_PARSERS = []
     html.DEFAULT_PARSER = html._get_default_parser()
     page = create_page(title='home', template='page.html', language='en')
     add_plugin(page.placeholders.get(slot='content'),
                'TextPlugin',
                'en',
                body='<span data-one="1" data-two="2">some text</span>')
     language = 'en'
     page.publish(language)
     url = page.get_absolute_url(language)
     response = self.client.get(url)
     self.assertContains(response, '<span>some text</span>')
Пример #12
0
    def test_clean_html_with_sanitize_disabled(self):
        old_TEXT_HTML_SANITIZE = settings.TEXT_HTML_SANITIZE
        settings.TEXT_HTML_SANITIZE = False
        parser = html._get_default_parser()

        original = '<span test-attr="2">foo</span>'
        cleaned = html.clean_html(
            original,
            full=False,
            parser=parser,
        )
        try:
            self.assertHTMLEqual(original, cleaned)
        finally:
            settings.TEXT_HTML_SANITIZE = old_TEXT_HTML_SANITIZE