def test_cannot_reject_already_rejected(self): u = UserFactory() req = ApprovalRequestFactory() req.reject(u, "r-") with pytest.raises(req.NotActionable): req.reject(u, "r-")
def test_reject(self): u = UserFactory() req = ApprovalRequestFactory() req.reject(u, 'r-') assert not req.approved assert req.approver == u assert req.comment == 'r-' recipe = req.revision.recipe assert not recipe.is_approved
def test_reject(self, mocker): u = UserFactory() req = ApprovalRequestFactory() mocker.patch.object(req, "verify_approver") req.reject(u, "r-") assert not req.approved assert req.approver == u assert req.comment == "r-" req.verify_approver.assert_called_with(u) recipe = req.revision.recipe assert not recipe.is_approved
def test_approval_status(self): recipe = RecipeFactory() revision = recipe.latest_revision assert revision.approval_status is None approval = ApprovalRequestFactory(revision=revision) revision = RecipeRevision.objects.get(pk=revision.pk) assert revision.approval_status == revision.PENDING approval.approve(UserFactory(), "r+") revision = RecipeRevision.objects.get(pk=revision.pk) assert revision.approval_status == revision.APPROVED approval.delete() approval = ApprovalRequestFactory(revision=revision) approval.reject(UserFactory(), "r-") revision = RecipeRevision.objects.get(pk=revision.pk) assert revision.approval_status == revision.REJECTED