12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394 |
- from django.core.files.base import ContentFile
- from ..activetheme import get_active_theme
- from ..models import Theme
- def test_active_theme_data_can_be_obtained(db):
- assert get_active_theme()
- def test_if_active_theme_is_default_theme_include_defaults_flag_is_set(db):
- assert get_active_theme()["include_defaults"]
- def test_if_active_theme_is_default_themes_child_include_defaults_flag_is_set(
- default_theme, active_theme
- ):
- active_theme.parent = default_theme
- active_theme.save()
- assert get_active_theme()["include_defaults"]
- def test_if_active_theme_is_not_default_themes_child_include_defaults_flag_is_not_set(
- active_theme,
- ):
- assert not get_active_theme()["include_defaults"]
- def test_active_theme_styles_are_included(active_theme):
- active_theme.css.create(name="test", url="https://example.com")
- assert get_active_theme()["styles"]
- def test_active_theme_parents_styles_are_included(active_theme):
- parent_theme = Theme.objects.create(name="Parent theme")
- parent_theme.css.create(name="test", url="https://example.com")
- active_theme.move_to(parent_theme)
- active_theme.save()
- assert get_active_theme()["styles"]
- def test_active_theme_child_themes_styles_are_not_included(active_theme):
- child_theme = Theme.objects.create(parent=active_theme, name="Child theme")
- child_theme.css.create(name="test", url="https://example.com")
- assert not get_active_theme()["styles"]
- def test_active_theme_styles_are_ordered(active_theme):
- last_css = active_theme.css.create(
- name="test", url="https://last-example.com", order=1
- )
- first_css = active_theme.css.create(
- name="test", url="https://first-example.com", order=0
- )
- assert get_active_theme()["styles"] == [first_css.url, last_css.url]
- def test_active_theme_styles_list_includes_url_to_remote_css(active_theme):
- css = active_theme.css.create(name="test", url="https://last-example.com")
- assert get_active_theme()["styles"] == [css.url]
- def test_active_theme_styles_list_contains_url_to_local_css(active_theme):
- css = active_theme.css.create(
- name="test",
- source_file=ContentFile("body {}", name="test.css"),
- source_hash="abcdefgh",
- )
- assert get_active_theme()["styles"] == [css.source_file.url]
- def test_active_theme_styles_list_contains_url_to_local_built_css(active_theme):
- css = active_theme.css.create(
- name="test",
- source_needs_building=True,
- build_file=ContentFile("body {}", name="test.css"),
- build_hash="abcdefgh",
- )
- assert get_active_theme()["styles"] == [css.build_file.url]
- def test_active_theme_styles_list_exclude_url_to_css_that_has_not_been_built(
- active_theme,
- ):
- active_theme.css.create(
- name="test",
- source_file=ContentFile("body {}", name="test.css"),
- source_hash="abcdefgh",
- source_needs_building=True,
- )
- assert not get_active_theme()["styles"]
|