Beispiel #1
0
 def test_default_language_widget(self):
     edit_handler = get_setting_edit_handler(SiteLanguages)
     form_cls = edit_handler.get_form_class(SiteLanguages)
     form = form_cls(instance=self.site.sitelanguages)
     assert isinstance(form.fields['default_language'].widget, Select)
     sites.create_site_tree(language=self.default_language, site=self.site)
     form = form_cls(instance=self.site.sitelanguages)
     assert isinstance(form.fields['default_language'].widget,
                       ReadOnlyWidget)
Beispiel #2
0
    def test_has_pages_in_site(self):
        language = LanguageFactory()

        site_one = SiteFactory(hostname='remotehost', site_name='RemoteSite', root_page__title='site_1')
        site_two = SiteFactory(hostname='losthost', site_name='LostSite', root_page__title='site_2')

        create_site_tree(language, site=site_one, subtitle='hophop flepflep')
        create_site_tree(language, site=site_two, subtitle='hophop flepflep')

        language.refresh_from_db()

        assert language.has_pages_in_site(site_one)
        assert language.has_pages_in_site(site_two)
Beispiel #3
0
    def test_get_translations(self, languages):
        site = SiteFactory()
        pages = create_site_tree(languages[0], site=site)
        for language in languages[1:]:
            create_site_tree(language, site=site)

        assert not hasattr(pages[0], 'language')
        translations = wagtailtrans_tags._get_translations(pages[0])

        language_codes = [l.code for l in translations.keys()]
        assert language_codes[0] == 'en'
        assert language_codes[1] == 'es'
        assert language_codes[2] == 'fr'
        assert language_codes[3] == 'de'
        assert language_codes[4] == 'nl'
Beispiel #4
0
 def setup(self):
     """Setup a Site root and add an english page.
     """
     en = models.Language.objects.get(code='en')
     en.is_default = True
     self.site_tree = create_site_tree(en)
     self.canonical_page = self.site_tree[1]
Beispiel #5
0
 def setup(self):
     self.admin_user = UserFactory(is_superuser=True)
     self.editor_user = UserFactory(first_name='Mr.XY',
                                    last_name="Z",
                                    username="******")
     self.default_language = Language.objects.get(code='en')
     pages = sites.create_site_tree(language=self.default_language)
     self.last_page = pages[-1]
     self.site_root_page = pages[0]
Beispiel #6
0
    def setup(self):
        """Setup a Site root and add an english page.

        We'll use this page as canonical page throughout the tests.

        """
        en = models.Language.objects.get(code='en')

        self.site_tree = create_site_tree(en)
        self.canonical_page = self.site_tree[1]
Beispiel #7
0
 def setup(self):
     # use a context manager to ensure these settings are
     # only used here
     with override_settings(WAGTAILTRANS_SYNC_TREE=True, WAGTAILTRANS_LANGUAGES_PER_SITE=True):
         register_signal_handlers()
         self.site = sites.SiteFactory()
         SiteLanguages.for_site(self.site)
         self.default_language = Language.objects.get(code='en')
         self.site.sitelanguages.default_language = self.default_language
         pages = sites.create_site_tree(language=self.default_language, site=self.site)
         self.last_page = pages[-1]
Beispiel #8
0
    def test_get_translations_util(self, languages):
        pages = create_site_tree(languages[0])
        site = pages[0].get_site()
        for language in languages[1:]:
            create_site_tree(language, site=site)

        translations = wagtailtrans_tags._get_translations(pages[1])
        language_codes = [l.code for l in translations.keys()]
        assert 'en' in language_codes
        assert 'es' in language_codes
        assert 'fr' in language_codes
        assert 'de' in language_codes
        assert 'nl' in language_codes

        translations = wagtailtrans_tags._get_translations(pages[1],
                                                           include_self=False)
        language_codes = [l.code for l in translations.keys()]
        assert 'en' not in language_codes
        assert 'es' in language_codes
        assert 'fr' in language_codes
        assert 'de' in language_codes
        assert 'nl' in language_codes
Beispiel #9
0
    def test_site_languages(self):
        site = sites.SiteFactory()
        SiteLanguages.for_site(site)  # Initialize sitelanguages

        default_language = Language.objects.default()
        lang = language.LanguageFactory(code='nl', is_default=False)
        site.sitelanguages.default_language = lang
        site.sitelanguages.save()

        pages = sites.create_site_tree(language=default_language, site=site)
        homepage = HomePageFactory.build(language=default_language)
        pages[0].add_child(instance=homepage)

        signals.force_parent_language(page=homepage, parent=site.root_page)

        assert homepage.language == lang
Beispiel #10
0
def test_get_canonical_pages_for_delete(languages):
    page = create_site_tree(languages[0])[1]
    for lang in languages[1:]:
        page.create_translation(lang, copy_fields=True)

    canonical_pages = translations_wagtail_admin.get_canonical_pages_for_delete(
        page)
    assert page not in canonical_pages
    assert languages[1:].count() == canonical_pages.count()

    non_canocial_page = WagtailPageFactory(path='/root')
    assert not translations_wagtail_admin.get_canonical_pages_for_delete(
        non_canocial_page)

    with override_settings(WAGTAILTRANS_SYNC_TREE=False):
        assert not translations_wagtail_admin.get_canonical_pages_for_delete(
            page)
Beispiel #11
0
 def setup(self):
     self.default_language = Language.objects.get(code='en')
     pages = sites.create_site_tree(language=self.default_language)
     self.last_page = pages[-1]
Beispiel #12
0
 def setup(self):
     self.default_language = language.LanguageFactory.create(
         code='en', is_default=True)
     self.pages = sites.create_site_tree(language=self.default_language)
     self.last_page = self.pages[-1]