def METHOD_NAME(phase_factory, idea_factory, user, user2):
    phase, _, project, item = setup_phase(
        phase_factory,
        idea_factory,
        phases.RatingPhase,
        module__project__access=Access.SEMIPUBLIC,
    )
    anonymous, moderator, initiator = setup_users(project)
    participant = user2
    project.participants.add(participant)
    assert project.access == Access.SEMIPUBLIC
    with freeze_phase(phase):
        assert not rules.has_perm(perm_name, anonymous, item)
        assert not rules.has_perm(perm_name, user, item)
        assert rules.has_perm(perm_name, participant, item)
        assert rules.has_perm(perm_name, moderator, item)
        assert rules.has_perm(perm_name, initiator, item)