Make changes backwards compatible
This commit is contained in:
2
setup.py
2
setup.py
@@ -19,7 +19,7 @@ tests_require = [
|
|||||||
'pytest-django==3.1.2',
|
'pytest-django==3.1.2',
|
||||||
'pytest-pythonpath==0.7.2',
|
'pytest-pythonpath==0.7.2',
|
||||||
'pytest-sugar==0.9.1',
|
'pytest-sugar==0.9.1',
|
||||||
'pytest==3.4.2',
|
'pytest==6.1.2',
|
||||||
'wagtail_factories==1.1.0',
|
'wagtail_factories==1.1.0',
|
||||||
'pytest-mock==1.6.3',
|
'pytest-mock==1.6.3',
|
||||||
]
|
]
|
||||||
|
@@ -11,7 +11,12 @@ from django.utils.safestring import mark_safe
|
|||||||
from django.utils.translation import ugettext_lazy as _
|
from django.utils.translation import ugettext_lazy as _
|
||||||
from wagtail.admin import messages
|
from wagtail.admin import messages
|
||||||
from wagtail.admin.site_summary import PagesSummaryItem, SummaryItem
|
from wagtail.admin.site_summary import PagesSummaryItem, SummaryItem
|
||||||
from wagtail.admin.views.pages.utils import get_valid_next_url_from_request
|
|
||||||
|
try:
|
||||||
|
from wagtail.admin.views.pages.utils import get_valid_next_url_from_request
|
||||||
|
except ModuleNotFoundError:
|
||||||
|
from wagtail.admin.views.pages import get_valid_next_url_from_request # noqa
|
||||||
|
|
||||||
from wagtail.admin.widgets import Button, ButtonWithDropdownFromHook
|
from wagtail.admin.widgets import Button, ButtonWithDropdownFromHook
|
||||||
from wagtail.core import hooks
|
from wagtail.core import hooks
|
||||||
from wagtail.core.models import Page
|
from wagtail.core.models import Page
|
||||||
@@ -23,6 +28,8 @@ from wagtail_personalisation.models import PersonalisablePageMetadata
|
|||||||
logger = logging.getLogger(__name__)
|
logger = logging.getLogger(__name__)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@hooks.register('register_admin_urls')
|
@hooks.register('register_admin_urls')
|
||||||
def register_admin_urls():
|
def register_admin_urls():
|
||||||
"""Adds the administration urls for the personalisation apps."""
|
"""Adds the administration urls for the personalisation apps."""
|
||||||
|
@@ -2,18 +2,21 @@ from __future__ import absolute_import, unicode_literals
|
|||||||
|
|
||||||
import factory
|
import factory
|
||||||
from django.utils.text import slugify
|
from django.utils.text import slugify
|
||||||
from wagtail.core.models import Locale
|
|
||||||
from wagtail_factories.factories import PageFactory
|
from wagtail_factories.factories import PageFactory
|
||||||
|
|
||||||
from tests.site.pages import models
|
from tests.site.pages import models
|
||||||
from wagtail_personalisation.models import PersonalisablePageMetadata
|
from wagtail_personalisation.models import PersonalisablePageMetadata
|
||||||
|
|
||||||
|
try:
|
||||||
|
from wagtail.core.models import Locale
|
||||||
|
|
||||||
class LocaleFactory(factory.django.DjangoModelFactory):
|
class LocaleFactory(factory.django.DjangoModelFactory):
|
||||||
language_code = "en"
|
language_code = "en"
|
||||||
|
|
||||||
class Meta:
|
class Meta:
|
||||||
model = Locale
|
model = Locale
|
||||||
|
except ImportError:
|
||||||
|
pass
|
||||||
|
|
||||||
class ContentPageFactory(PageFactory):
|
class ContentPageFactory(PageFactory):
|
||||||
parent = None
|
parent = None
|
||||||
|
@@ -4,14 +4,18 @@ from django.contrib.messages.storage.fallback import FallbackStorage
|
|||||||
from django.contrib.sessions.backends.db import SessionStore
|
from django.contrib.sessions.backends.db import SessionStore
|
||||||
from django.test.client import RequestFactory as BaseRequestFactory
|
from django.test.client import RequestFactory as BaseRequestFactory
|
||||||
|
|
||||||
from tests.factories.page import ContentPageFactory, LocaleFactory, RegularPageFactory
|
from tests.factories.page import ContentPageFactory, RegularPageFactory
|
||||||
from tests.factories.segment import SegmentFactory
|
from tests.factories.segment import SegmentFactory
|
||||||
from tests.factories.site import SiteFactory
|
from tests.factories.site import SiteFactory
|
||||||
|
|
||||||
|
|
||||||
@pytest.fixture(scope='function')
|
@pytest.fixture(scope='function')
|
||||||
def site():
|
def site():
|
||||||
LocaleFactory()
|
try:
|
||||||
|
from tests.factories.page import LocaleFactory
|
||||||
|
LocaleFactory()
|
||||||
|
except ImportError:
|
||||||
|
pass
|
||||||
root_page = ContentPageFactory(parent=None, slug='')
|
root_page = ContentPageFactory(parent=None, slug='')
|
||||||
site = SiteFactory(is_default_site=True, root_page=root_page)
|
site = SiteFactory(is_default_site=True, root_page=root_page)
|
||||||
|
|
||||||
|
@@ -3,7 +3,7 @@ import datetime
|
|||||||
import pytest
|
import pytest
|
||||||
from django.db.models import ProtectedError
|
from django.db.models import ProtectedError
|
||||||
|
|
||||||
from tests.factories.page import ContentPageFactory, LocaleFactory
|
from tests.factories.page import ContentPageFactory
|
||||||
from tests.factories.segment import SegmentFactory
|
from tests.factories.segment import SegmentFactory
|
||||||
from tests.site.pages import models
|
from tests.site.pages import models
|
||||||
from wagtail_personalisation.models import PersonalisablePageMetadata, Segment
|
from wagtail_personalisation.models import PersonalisablePageMetadata, Segment
|
||||||
@@ -31,7 +31,11 @@ def test_metadata_page_has_variants(segmented_page):
|
|||||||
|
|
||||||
@pytest.mark.django_db
|
@pytest.mark.django_db
|
||||||
def test_content_page_model():
|
def test_content_page_model():
|
||||||
LocaleFactory()
|
try:
|
||||||
|
from tests.factories.page import LocaleFactory
|
||||||
|
LocaleFactory()
|
||||||
|
except ImportError:
|
||||||
|
pass
|
||||||
page = ContentPageFactory()
|
page = ContentPageFactory()
|
||||||
qs = models.ContentPage.objects.all()
|
qs = models.ContentPage.objects.all()
|
||||||
assert page in qs
|
assert page in qs
|
||||||
|
@@ -2,15 +2,24 @@ import pytest
|
|||||||
from django.test import override_settings
|
from django.test import override_settings
|
||||||
from wagtail.core.models import Page as WagtailPage
|
from wagtail.core.models import Page as WagtailPage
|
||||||
|
|
||||||
from tests.factories.page import (
|
from tests.factories.page import (ContentPageFactory, PersonalisablePageMetadataFactory)
|
||||||
ContentPageFactory, LocaleFactory, PersonalisablePageMetadataFactory)
|
|
||||||
from wagtail_personalisation.utils import (
|
from wagtail_personalisation.utils import (
|
||||||
can_delete_pages, exclude_variants, get_client_ip, impersonate_other_page)
|
can_delete_pages, exclude_variants, get_client_ip, impersonate_other_page)
|
||||||
|
|
||||||
|
|
||||||
|
locale_factory = False
|
||||||
|
|
||||||
|
try:
|
||||||
|
from tests.factories.page import LocaleFactory
|
||||||
|
locale_factory = True
|
||||||
|
except ImportError:
|
||||||
|
pass
|
||||||
|
|
||||||
|
|
||||||
@pytest.fixture
|
@pytest.fixture
|
||||||
def rootpage():
|
def rootpage():
|
||||||
LocaleFactory()
|
if locale_factory:
|
||||||
|
LocaleFactory()
|
||||||
return ContentPageFactory(parent=None, path='/', depth=0, title='root')
|
return ContentPageFactory(parent=None, path='/', depth=0, title='root')
|
||||||
|
|
||||||
|
|
||||||
@@ -72,7 +81,8 @@ def test_exclude_variants_with_pages_querysets():
|
|||||||
'''
|
'''
|
||||||
Test that excludes variant works for querysets
|
Test that excludes variant works for querysets
|
||||||
'''
|
'''
|
||||||
LocaleFactory()
|
if locale_factory:
|
||||||
|
LocaleFactory()
|
||||||
for i in range(5):
|
for i in range(5):
|
||||||
page = ContentPageFactory(path="/" + str(i), depth=0, url_path="/", title="Hoi " + str(i))
|
page = ContentPageFactory(path="/" + str(i), depth=0, url_path="/", title="Hoi " + str(i))
|
||||||
page.save()
|
page.save()
|
||||||
@@ -88,7 +98,8 @@ def test_exclude_variants_with_pages_querysets_not_canonical():
|
|||||||
Test that excludes variant works for querysets with
|
Test that excludes variant works for querysets with
|
||||||
personalisation_metadata canonical False
|
personalisation_metadata canonical False
|
||||||
'''
|
'''
|
||||||
LocaleFactory()
|
if locale_factory:
|
||||||
|
LocaleFactory()
|
||||||
for i in range(5):
|
for i in range(5):
|
||||||
page = ContentPageFactory(path="/" + str(i), depth=0, url_path="/", title="Hoi " + str(i))
|
page = ContentPageFactory(path="/" + str(i), depth=0, url_path="/", title="Hoi " + str(i))
|
||||||
page.save()
|
page.save()
|
||||||
@@ -109,7 +120,8 @@ def test_exclude_variants_with_pages_querysets_meta_none():
|
|||||||
'''
|
'''
|
||||||
Test that excludes variant works for querysets with meta as none
|
Test that excludes variant works for querysets with meta as none
|
||||||
'''
|
'''
|
||||||
LocaleFactory()
|
if locale_factory:
|
||||||
|
LocaleFactory()
|
||||||
for i in range(5):
|
for i in range(5):
|
||||||
page = ContentPageFactory(path="/" + str(i), depth=0, url_path="/", title="Hoi " + str(i))
|
page = ContentPageFactory(path="/" + str(i), depth=0, url_path="/", title="Hoi " + str(i))
|
||||||
page.save()
|
page.save()
|
||||||
|
Reference in New Issue
Block a user