def test_pageform_urls(rf, admin_user): shop = factories.get_default_shop() en_url = "test-url" fi_url = "test-fi-url" activate("en") request = apply_request_middleware(rf.post("/"), user=admin_user, shop=shop) with override_settings(LANGUAGES=[("en", "en"), ("fi", "fi")]): form = PageForm(request=request, data={ "title__en": "test", "content__en": "test", "url__en": en_url }) assert form.is_valid() assert form.is_url_valid("en", "url__en", en_url) assert form.is_url_valid("fi", "url__fi", fi_url) # create a page Page.objects.create(shop=shop, content="test", url=en_url, title="test") form = PageForm(request=request, data={ "title__en": "test", "content__en": "test", "url__en": en_url, "url__fi": fi_url }) assert not form.is_valid() assert not form.is_url_valid("en", "url__en", en_url) assert form.is_url_valid( "fi", "url__fi", fi_url) # no changes in finnish, should be valid form = PageForm(request=request, data={ "title__en": "test", "content__en": "test", "url__en": "new-url" }) assert form.is_valid() assert form.is_url_valid("en", "url__en", "new-url") assert form.is_url_valid("fi", "url__fi", fi_url)
def test_pageform_urls(rf, admin_user): shop = factories.get_default_shop() en_url = "test-url" fi_url = "test-fi-url" activate("en") request = apply_request_middleware(rf.post("/"), user=admin_user, shop=shop) with override_settings(LANGUAGES=[("en", "en"), ("fi", "fi")]): form = PageForm(request=request, data={ "title__en": "test", "content__en": "test", "url__en": en_url }) assert form.is_valid() assert form.is_url_valid("en", "url__en", en_url) assert form.is_url_valid("fi", "url__fi", fi_url) # create a page Page.objects.create(shop=shop, content="test", url=en_url, title="test") form = PageForm(request=request, data={ "title__en": "test", "content__en": "test", "url__en": en_url, "url__fi": fi_url }) assert not form.is_valid() assert not form.is_url_valid("en", "url__en", en_url) assert form.is_url_valid("fi", "url__fi", fi_url) # no changes in finnish, should be valid form = PageForm(request=request, data={ "title__en": "test", "content__en": "test", "url__en": "new-url" }) assert form.is_valid() assert form.is_url_valid("en", "url__en", "new-url") assert form.is_url_valid("fi", "url__fi", fi_url)