def test_expand_db_attributes_for_editor(self, get_embed): get_embed.return_value = Embed( url='http://www.youtube.com/watch/', max_width=None, type='video', html='test html', title='test title', author_name='test author name', provider_name='test provider name', thumbnail_url='http://test/thumbnail.url', width=1000, height=1000, ) result = EditorHtmlMediaEmbedHandler.expand_db_attributes({ 'url': 'http://www.youtube.com/watch/', }) self.assertIn(( '<div class="embed-placeholder" contenteditable="false" data-embedtype="media"' ' data-url="http://www.youtube.com/watch/">'), result) self.assertIn('<h3>test title</h3>', result) self.assertIn('<p>URL: http://www.youtube.com/watch/</p>', result) self.assertIn('<p>Provider: test provider name</p>', result) self.assertIn('<p>Author: test author name</p>', result) self.assertIn('<img src="http://test/thumbnail.url" alt="test title">', result)
def test_expand_db_attributes_for_editor_catches_embed_not_found( self, get_embed): get_embed.side_effect = EmbedNotFoundException result = EditorHtmlMediaEmbedHandler.expand_db_attributes({ 'url': 'http://www.youtube.com/watch/', }) self.assertEqual(result, '')
def test_get_db_attributes(self): soup = BeautifulSoup('<b data-url="test-url">foo</b>', 'html5lib') tag = soup.b result = EditorHtmlMediaEmbedHandler.get_db_attributes(tag) self.assertEqual( result, {'url': 'test-url'} )