diff --git a/wagtail/wagtailembeds/templatetags/wagtailembeds_tags.py b/wagtail/wagtailembeds/templatetags/wagtailembeds_tags.py index 40f42aeb0..8c6963960 100644 --- a/wagtail/wagtailembeds/templatetags/wagtailembeds_tags.py +++ b/wagtail/wagtailembeds/templatetags/wagtailembeds_tags.py @@ -1,7 +1,7 @@ from django import template from django.utils.safestring import mark_safe -from wagtail.wagtailembeds.embeds import get_embed +from wagtail.wagtailembeds import embeds register = template.Library() @@ -9,7 +9,7 @@ register = template.Library() @register.filter def embed(url, max_width=None): - embed = get_embed(url, max_width=max_width) + embed = embeds.get_embed(url, max_width=max_width) try: if embed is not None: return mark_safe(embed.html) diff --git a/wagtail/wagtailembeds/tests.py b/wagtail/wagtailembeds/tests.py index ab28dec41..e02e8ce25 100644 --- a/wagtail/wagtailembeds/tests.py +++ b/wagtail/wagtailembeds/tests.py @@ -273,42 +273,22 @@ class TestOembed(TestCase): class TestEmbedFilter(TestCase): - def setUp(self): - class DummyResponse(object): - def read(self): - return b"foo" - self.dummy_response = DummyResponse() + @patch('wagtail.wagtailembeds.embeds.get_embed') + def test_direct_call(self, get_embed): + get_embed.return_value = Embed(html='') - @patch('six.moves.urllib.request.urlopen') - @patch('json.loads') - def test_valid_embed(self, loads, urlopen): - urlopen.return_value = self.dummy_response - loads.return_value = {'type': 'photo', - 'url': 'http://www.example.com'} result = embed_filter('http://www.youtube.com/watch/') + self.assertEqual(result, '') - @patch('six.moves.urllib.request.urlopen') - @patch('json.loads') - def test_render_filter(self, loads, urlopen): - urlopen.return_value = self.dummy_response - loads.return_value = {'type': 'photo', - 'url': 'http://www.example.com'} - temp = template.Template('{% load wagtailembeds_tags %}{{ "http://www.youtube.com/watch/"|embed }}') - context = template.Context() - result = temp.render(context) - self.assertEqual(result, '') + @patch('wagtail.wagtailembeds.embeds.get_embed') + def test_call_from_template(self, get_embed): + get_embed.return_value = Embed(html='') - @patch('six.moves.urllib.request.urlopen') - @patch('json.loads') - def test_render_filter_nonexistent_type(self, loads, urlopen): - urlopen.return_value = self.dummy_response - loads.return_value = {'type': 'foo', - 'url': 'http://www.example.com'} temp = template.Template('{% load wagtailembeds_tags %}{{ "http://www.youtube.com/watch/"|embed }}') - context = template.Context() - result = temp.render(context) - self.assertEqual(result, '') + result = temp.render(template.Context()) + + self.assertEqual(result, '') class TestEmbedBlock(TestCase):