2020-02-13 17:53:35 +05:30
|
|
|
import pytest
|
2020-04-03 21:54:14 +05:30
|
|
|
from wagtail_draftail_snippet.richtext import SnippetLinkHandler, SnippetEmbedHandler
|
2020-02-13 17:53:35 +05:30
|
|
|
|
|
|
|
|
2020-02-14 22:23:14 -05:00
|
|
|
class TestSnippetLinkHandler:
|
|
|
|
@pytest.mark.django_db
|
|
|
|
def test_advert_setup_correctly(self, advert):
|
|
|
|
assert advert.text == "advert"
|
|
|
|
assert advert.url == "https://www.example.com"
|
|
|
|
|
|
|
|
@pytest.mark.django_db
|
|
|
|
def test_snippet_create_empty_link_on_error(self, advert):
|
|
|
|
"""
|
|
|
|
Empty link created in case of exception
|
|
|
|
"""
|
2020-02-13 17:53:35 +05:30
|
|
|
|
2020-02-14 22:23:14 -05:00
|
|
|
result = SnippetLinkHandler.expand_db_attributes({"id": 0})
|
|
|
|
assert result == "<a>"
|
2020-02-13 17:53:35 +05:30
|
|
|
|
2020-02-14 22:23:14 -05:00
|
|
|
@pytest.mark.django_db
|
|
|
|
def test_snippet_link_handler_renders(self, advert):
|
|
|
|
"""
|
|
|
|
Test snippet template renders correctly
|
|
|
|
"""
|
2020-02-13 17:53:35 +05:30
|
|
|
|
2020-04-08 12:12:17 +05:30
|
|
|
attrs = {"id": 1, "data-app-name": "testapp", "data-model-name": "advert"}
|
2020-02-14 22:23:14 -05:00
|
|
|
result = SnippetLinkHandler.expand_db_attributes(attrs)
|
|
|
|
assert result == f'<a href="{advert.url}/{advert.id}">'
|
2020-04-03 21:54:14 +05:30
|
|
|
|
|
|
|
|
2020-04-08 12:12:17 +05:30
|
|
|
class TestSnippetEmbedHandler:
|
|
|
|
@pytest.mark.django_db
|
|
|
|
def test_advert_setup_correctly(self, advert):
|
|
|
|
assert advert.text == "advert"
|
|
|
|
assert advert.url == "https://www.example.com"
|
2020-04-08 11:54:26 +05:30
|
|
|
|
2020-04-08 12:12:17 +05:30
|
|
|
@pytest.mark.django_db
|
|
|
|
def test_snippet_create_empty_block_on_error(self, advert):
|
|
|
|
"""
|
|
|
|
Empty block created in case of exception
|
|
|
|
"""
|
2020-04-08 11:54:26 +05:30
|
|
|
|
2020-04-08 12:12:17 +05:30
|
|
|
result = SnippetEmbedHandler.expand_db_attributes({"id": 0})
|
|
|
|
assert result == ""
|
2020-04-08 11:54:26 +05:30
|
|
|
|
2020-04-08 12:12:17 +05:30
|
|
|
@pytest.mark.django_db
|
|
|
|
def test_snippet_embed_handler_renders(self, advert):
|
|
|
|
"""
|
|
|
|
Test snippet template renders correctly
|
|
|
|
"""
|
2020-04-08 11:54:26 +05:30
|
|
|
|
2020-04-08 12:12:17 +05:30
|
|
|
attrs = {"id": 1, "data-app-name": "testapp", "data-model-name": "advert"}
|
|
|
|
result = SnippetEmbedHandler.expand_db_attributes(attrs)
|
|
|
|
assert result == f'<div>{advert.text}</div>'
|