Skip to content

Commit 2e68a83

Browse files
committed
Add tests for rendering script tags.
1 parent 7498972 commit 2e68a83

File tree

1 file changed

+44
-0
lines changed

1 file changed

+44
-0
lines changed

tests/templatetags/test_unicorn_render.py

Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
1+
import re
2+
13
from django.template.base import Token, TokenType
24

35
from django_unicorn.components import UnicornView
@@ -175,3 +177,45 @@ def test_unicorn_render_id_use_pk():
175177
actual = unicorn_node.render(context)
176178

177179
assert "==123==" in actual
180+
181+
182+
def test_unicorn_render_component_one_script_tag(settings):
183+
settings.DEBUG = True
184+
token = Token(
185+
TokenType.TEXT,
186+
"unicorn 'tests.templatetags.test_unicorn_render.FakeComponentKwargs'",
187+
)
188+
unicorn_node = unicorn(None, token)
189+
context = {}
190+
html = unicorn_node.render(context)
191+
192+
assert "<script" in html
193+
assert len(re.findall("<script", html)) == 1
194+
195+
196+
def test_unicorn_render_child_component_no_script_tag(settings):
197+
settings.DEBUG = True
198+
token = Token(
199+
TokenType.TEXT,
200+
"unicorn 'tests.templatetags.test_unicorn_render.FakeComponentKwargs' parent=view",
201+
)
202+
unicorn_node = unicorn(None, token)
203+
view = FakeComponentParent(component_name="test", component_id="asdf")
204+
context = {"view": view}
205+
html = unicorn_node.render(context)
206+
207+
assert "<script" not in html
208+
209+
210+
def test_unicorn_render_parent_component_one_script_tag(settings):
211+
settings.DEBUG = True
212+
token = Token(
213+
TokenType.TEXT,
214+
"unicorn 'tests.templatetags.test_unicorn_render.FakeComponentParent'",
215+
)
216+
unicorn_node = unicorn(None, token)
217+
context = {}
218+
html = unicorn_node.render(context)
219+
220+
assert "<script" in html
221+
assert len(re.findall("<script", html)) == 1

0 commit comments

Comments
 (0)