Как проверить сигнал page_published в Wagtail?

Я добавил сигнал page_published для TraitPage, который дает разрешение на редактирование родительской страницы TraitPage.

Мой сигнал:

@receiver(page_published, sender=TraitPage)
def allow_user_edit_user_creator_page(**kwargs):
    instance = kwargs['instance']
    page_owner = instance.owner
    # superusers have permissions to edit by default
    if not page_owner.is_superuser:
        user_creator_page = instance.get_parent()
        usergroup = Group.objects.get(name=str(page_owner.id))
        GroupPagePermission.objects.get_or_create(group=usergroup,
                                                page=user_creator_page, 
                                                permission_type='edit')

Мой тест:

def test_edit_permission_exist_after_trait_page_added(self):
    # create TraitPage
    trait_page = TraitPage(
        title='test trait page', 
        owner=self.user,
        live=True,
        bg_image=self.image)
    # user_profile_page - is the parent of TraitPage
    self.user_profile_page.add_child(instance=trait_page)
    # I expect this to exist
    edit_permission = GroupPagePermission.objects.filter(
        group=self.usergroup, permission_type='edit', page=self.user_profile_page).exists()
    self.assertTrue(edit_permission)

Из админки трясогузки все работает нормально, однако тест не проходит. Создает ли создание страницы с live=True сигнал page_published?

Вернуться на верх