@ -2,14 +2,22 @@ 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_factories.factories import MP_NodeFactory
|
from wagtail_factories.factories import PageFactory
|
||||||
|
|
||||||
from tests.site.pages.models import ContentPage
|
from tests.site.pages import models
|
||||||
|
|
||||||
|
|
||||||
class ContentPageFactory(MP_NodeFactory):
|
class ContentPageFactory(PageFactory):
|
||||||
title = 'Test page'
|
title = 'Test page'
|
||||||
slug = factory.LazyAttribute(lambda obj: slugify(obj.title))
|
slug = factory.LazyAttribute(lambda obj: slugify(obj.title))
|
||||||
|
|
||||||
class Meta:
|
class Meta:
|
||||||
model = ContentPage
|
model = models.ContentPage
|
||||||
|
|
||||||
|
|
||||||
|
class RegularPageFactory(PageFactory):
|
||||||
|
title = 'Regular page'
|
||||||
|
slug = factory.LazyAttribute(lambda obj: slugify(obj.title))
|
||||||
|
|
||||||
|
class Meta:
|
||||||
|
model = models.RegularPage
|
||||||
|
@ -4,7 +4,7 @@ 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
|
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
|
||||||
|
|
||||||
@ -14,10 +14,12 @@ def site():
|
|||||||
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)
|
||||||
|
|
||||||
page1 = ContentPageFactory(parent=site.root_page, slug='page-1')
|
page1 = ContentPageFactory(parent=root_page, slug='page-1')
|
||||||
page2 = ContentPageFactory(parent=site.root_page, slug='page-2')
|
page2 = ContentPageFactory(parent=root_page, slug='page-2')
|
||||||
ContentPageFactory(parent=page1, slug='page-1-1')
|
ContentPageFactory(parent=page1, slug='page-1-1')
|
||||||
ContentPageFactory(parent=page2, slug='page-2-1')
|
ContentPageFactory(parent=page2, slug='page-2-1')
|
||||||
|
|
||||||
|
ContentPageFactory(parent=root_page, slug='regular')
|
||||||
return site
|
return site
|
||||||
|
|
||||||
|
|
||||||
|
@ -8,6 +8,16 @@ from wagtail.wagtailcore.models import Page
|
|||||||
from wagtail_personalisation.models import PersonalisablePageMixin
|
from wagtail_personalisation.models import PersonalisablePageMixin
|
||||||
|
|
||||||
|
|
||||||
|
class RegularPage(Page):
|
||||||
|
subtitle = models.CharField(max_length=255, blank=True, default='')
|
||||||
|
body = RichTextField(blank=True, default='')
|
||||||
|
|
||||||
|
content_panels = Page.content_panels + [
|
||||||
|
FieldPanel('subtitle'),
|
||||||
|
FieldPanel('body'),
|
||||||
|
]
|
||||||
|
|
||||||
|
|
||||||
class ContentPage(PersonalisablePageMixin, Page):
|
class ContentPage(PersonalisablePageMixin, Page):
|
||||||
subtitle = models.CharField(max_length=255, blank=True, default='')
|
subtitle = models.CharField(max_length=255, blank=True, default='')
|
||||||
body = RichTextField(blank=True, default='')
|
body = RichTextField(blank=True, default='')
|
||||||
|
7
tests/unit/test_regressions.py
Normal file
7
tests/unit/test_regressions.py
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
import pytest
|
||||||
|
|
||||||
|
|
||||||
|
@pytest.mark.django_db
|
||||||
|
def test_request_device_segment_no_match(client, site):
|
||||||
|
response = client.get('/regular/')
|
||||||
|
assert response.status_code == 200
|
Reference in New Issue
Block a user