def get_object(self, request, object_id):
        obj = super(ContentRepositoryAdmin, self).get_object(
            request, object_id)
        if obj is None:  # pragma: no cover
            return

        if not obj.targets.exists():
            obj.targets.add(PublishingTarget.get_default_target())
        return obj
    def test_get_object_side_effects(self):
        """
        NOTE: What we're testing here is that for any content repository
              we're always adding the default target if the Admin
              receives a `content repository` object to display
        """
        request = RequestFactory().get('/')

        repo_admin = ContentRepositoryAdmin(ContentRepository, admin)
        content_repo = ContentRepository.objects.create(name='the repo')
        self.assertFalse(content_repo.targets.exists())
        repo_admin.get_object(request, content_repo.pk)
        [target] = content_repo.targets.all()
        self.assertEqual(target, PublishingTarget.get_default_target())
 def test_get_default_target(self):
     self.assertFalse(PublishingTarget.objects.exists())
     default_target = PublishingTarget.get_default_target()
     self.assertEqual(default_target.name, settings.DEFAULT_TARGET_NAME)
     self.assertTrue(PublishingTarget.objects.exists())
 def test_has_add_permission(self):
     target_admin = PublishingTargetAdmin(PublishingTarget, admin)
     self.assertFalse(PublishingTarget.objects.exists())
     self.assertFalse(target_admin.has_add_permission())
     [target] = PublishingTarget.objects.all()
     self.assertEqual(target, PublishingTarget.get_default_target())
 def has_add_permission(self, *args, **kwargs):
     PublishingTarget.get_default_target()
     return False