44 lines
1.2 KiB
Python
44 lines
1.2 KiB
Python
from __future__ import absolute_import, unicode_literals
|
|
|
|
import datetime
|
|
|
|
import pytest
|
|
|
|
from tests.factories.rule import QueryRuleFactory, ReferralRuleFactory
|
|
from tests.factories.segment import SegmentFactory
|
|
from wagtail_personalisation.models import Segment
|
|
from wagtail_personalisation.rules import TimeRule
|
|
|
|
# Factory tests
|
|
|
|
|
|
@pytest.mark.django_db
|
|
def test_segment_create():
|
|
factoried_segment = SegmentFactory()
|
|
segment = Segment(name="TestSegment", status="enabled")
|
|
TimeRule(
|
|
start_time=datetime.time(8, 0, 0),
|
|
end_time=datetime.time(23, 0, 0),
|
|
segment=segment,
|
|
)
|
|
|
|
assert factoried_segment.name == segment.name
|
|
assert factoried_segment.status == segment.status
|
|
|
|
|
|
@pytest.mark.django_db
|
|
def test_referral_rule_create():
|
|
segment = SegmentFactory(name="Referral")
|
|
referral_rule = ReferralRuleFactory(regex_string="test.test", segment=segment)
|
|
|
|
assert referral_rule.regex_string == "test.test"
|
|
|
|
|
|
@pytest.mark.django_db
|
|
def test_query_rule_create():
|
|
segment = SegmentFactory(name="Query")
|
|
query_rule = QueryRuleFactory(parameter="query", value="value", segment=segment)
|
|
|
|
assert query_rule.parameter == "query"
|
|
assert query_rule.value == "value"
|