Skip to content

Commit ec1bc8d

Browse files
committed
fix tests to independently install djangocms-url-manager
1 parent e39fc8f commit ec1bc8d

File tree

3 files changed

+52
-48
lines changed

3 files changed

+52
-48
lines changed

tests/fixtures.py

Lines changed: 41 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -82,43 +82,48 @@ def create_page(self, title, **kwargs):
8282
def get_placeholders(self, page):
8383
return page.get_placeholders(self.language)
8484

85-
def create_url(
86-
self,
87-
site=None,
88-
content_object=None,
89-
manual_url="",
90-
relative_path="",
91-
phone="",
92-
mailto="",
93-
anchor="",
94-
):
95-
from djangocms_url_manager.models import Url, UrlGrouper
96-
from djangocms_url_manager.utils import is_versioning_enabled
97-
from djangocms_versioning.constants import DRAFT
98-
from djangocms_versioning.models import Version
99-
100-
if site is None:
101-
site = self.default_site
102-
103-
url = Url.objects.create(
104-
site=site,
105-
content_object=content_object,
106-
manual_url=manual_url,
107-
relative_path=relative_path,
108-
phone=phone,
109-
mailto=mailto,
110-
anchor=anchor,
111-
url_grouper=UrlGrouper.objects.create(),
112-
)
113-
if is_versioning_enabled():
114-
Version.objects.create(
115-
content=url,
116-
created_by=self.superuser,
117-
state=DRAFT,
118-
content_type_id=ContentType.objects.get_for_model(Url).id,
85+
try:
86+
import djangocms_url_manager as __just_testing__
87+
88+
def create_url(
89+
self,
90+
site=None,
91+
content_object=None,
92+
manual_url="",
93+
relative_path="",
94+
phone="",
95+
mailto="",
96+
anchor="",
97+
):
98+
from djangocms_url_manager.models import Url, UrlGrouper
99+
from djangocms_url_manager.utils import is_versioning_enabled
100+
from djangocms_versioning.constants import DRAFT
101+
from djangocms_versioning.models import Version
102+
103+
if site is None:
104+
site = self.default_site
105+
106+
url = Url.objects.create(
107+
site=site,
108+
content_object=content_object,
109+
manual_url=manual_url,
110+
relative_path=relative_path,
111+
phone=phone,
112+
mailto=mailto,
113+
anchor=anchor,
114+
url_grouper=UrlGrouper.objects.create(),
119115
)
120-
121-
return url
116+
if is_versioning_enabled():
117+
Version.objects.create(
118+
content=url,
119+
created_by=self.superuser,
120+
state=DRAFT,
121+
content_type_id=ContentType.objects.get_for_model(Url).id,
122+
)
123+
124+
return url
125+
except ModuleNotFoundError:
126+
pass
122127

123128
def delete_urls(self):
124129
from djangocms_url_manager.models import Url

tests/link/test_plugins.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
from djangocms_frontend.contrib.link.forms import LinkForm, SmartLinkField
99
from djangocms_frontend.contrib.link.helpers import get_choices
1010

11-
from ..fixtures import DJANGO_CMS4, TestFixture
11+
from ..fixtures import TestFixture
1212

1313

1414
class LinkPluginTestCase(TestFixture, CMSTestCase):
@@ -137,14 +137,14 @@ def test_link_form(self):
137137
self.create_url(manual_url="https://www.django-cms.org/").id
138138
)
139139
)
140-
if DJANGO_CMS4
140+
if hasattr(self, "create_url")
141141
else dict(external_link="https://www.django-cms.org/")
142142
),
143143
}
144144
)
145145
form = LinkForm(request.POST)
146146
self.assertTrue(form.is_valid(), f"{form.__class__.__name__}:form errors: {form.errors}")
147-
if DJANGO_CMS4:
147+
if hasattr(self, "create_url"):
148148
self.delete_urls()
149149
else:
150150
request.POST.update({"mailto": "none@nowhere.com"})

tests/test_plugin_tag.py

Lines changed: 8 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
from cms import __version__ as cms_version
21
from cms.test_utils.testcases import CMSTestCase
32
from django.contrib.sites.shortcuts import get_current_site
43
from django.template import engines
@@ -77,17 +76,17 @@ def test_complex_tags(self):
7776
self.assertInHTML(expected_result, result)
7877

7978
def test_link_plugin(self):
80-
if cms_version < "4":
81-
grouper = None
79+
if hasattr(self, "create_url"):
80+
grouper = self.create_url(manual_url="/test/").url_grouper
8281
template = django_engine.from_string("""{% load frontend %}
83-
{% plugin "textlink" name="Click" external_link="/test/" link_type="btn" link_context="primary" link_outline=False %}
84-
Click me!
85-
{% endplugin %}
86-
""") # noqa: B950
82+
{% plugin "textlink" name="Click" url_grouper=grouper site=test_site link_type="btn" link_context="primary" link_outline=False %}
83+
Click me!
84+
{% endplugin %}
85+
""") # noqa: B950
8786
else:
88-
grouper = self.create_url(manual_url="/test/").url_grouper
87+
grouper = None
8988
template = django_engine.from_string("""{% load frontend %}
90-
{% plugin "textlink" name="Click" url_grouper=grouper site=test_site link_type="btn" link_context="primary" link_outline=False %}
89+
{% plugin "textlink" name="Click" external_link="/test/" link_type="btn" link_context="primary" link_outline=False %}
9190
Click me!
9291
{% endplugin %}
9392
""") # noqa: B950

0 commit comments

Comments
 (0)