def django_db_setup(django_db_setup, django_db_blocker): with django_db_blocker.unblock(): root_page = Page(title='test', path='test', depth=1) root_page.save() site = Site(hostname='www.example.com', root_page=root_page) site.save() count_settings = AnimalCountSettings(site_id=site.id) count_settings.save()
def test_auto_recache(root_page, example_svg_upload): page = Page(title="nnep", slug="nnep") page.set_url_path(root_page) root_page.add_child(instance=page) page.save() assert page.url map = ImageMap.objects.create(svg=example_svg_upload) map.regions.create(element_id='blue', link_page=page) map.recache_svg(save=True) assert 'nnep' in map.rendered_svg page.slug = 'ffflop' page.save() # The `post_save` triggers will get called... assert 'ffflop' in ImageMap.objects.get(pk=map.pk).rendered_svg
def test_exclude_variants_with_pages_querysets(): ''' Test that excludes variant works for querysets ''' for i in range(5): page = WagtailPage(path="/" + str(i), depth=0, url_path="/", title="Hoi " + str(i)) page.save() pages = WagtailPage.objects.all().order_by('id') result = exclude_variants(pages) assert type(result) == type(pages) assert result == pages
def test_rendering(root_page, example_svg_upload, dummy_wagtail_doc): page = Page(title="nnep", slug="nnep") page.set_url_path(root_page) root_page.add_child(instance=page) page.save() assert page.url map = ImageMap.objects.create(svg=example_svg_upload) map.regions.create(element_id='green', link_external='/foobar', target='_blank') map.regions.create(element_id='blue', link_page=page, target='_top') map.regions.create(element_id='red', link_document=dummy_wagtail_doc) svg = map.rendered_svg assert '/foobar' in svg assert '_blank' in svg assert 'nnep' in svg assert '_top' in svg assert ('documents/%s' % dummy_wagtail_doc.pk) in svg
def test_exclude_variants_with_pages_querysets_meta_none(): ''' Test that excludes variant works for querysets with meta as none ''' for i in range(5): page = WagtailPage(path="/" + str(i), depth=0, url_path="/", title="Hoi " + str(i)) page.save() pages = WagtailPage.objects.all().order_by('id') # add variants for page in pages: page.personalisation_metadata = None page.save() result = exclude_variants(pages) assert type(result) == type(pages) assert result == pages
def test_exclude_variants_with_pages_querysets_not_canonical(): ''' Test that excludes variant works for querysets with personalisation_metadata canonical False ''' for i in range(5): page = WagtailPage(path="/" + str(i), depth=0, url_path="/", title="Hoi " + str(i)) page.save() pages = WagtailPage.objects.all().order_by('id') # add variants for page in pages: page.personalisation_metadata = Metadata(is_canonical=False) page.save() result = exclude_variants(pages) assert type(result) == type(pages) assert result.count() == 0
return except: pass kcp_type = ContentType.objects.get_for_model(target_model) cp_page = page.specific kcp_page = target_model(body=cp_page.body, page_ptr=page) for f in kcp_page._meta.fields: setattr(kcp_page, f.name, getattr(cp_page, f.name)) super(Page, kcp_page).save() for f in dummy_page._meta.fields: setattr(cp_page, f.name, getattr(dummy_page, f.name)) cp_page.page_ptr_id = dummy_page.id cp_page.save() print(page) models.Model.delete(cp_page, keep_parents=True) page.content_type = kcp_type page.save(update_fields=['content_type']) with transaction.atomic(): dummy_page.save() if not isinstance(k_root, KehmetFrontPage): convert_page(k_root, KehmetFrontPage) for page in pages: convert_page(page, KehmetContentPage) p = Page.objects.get(id=dummy_page.id) p.delete()