def test_can_edit_is_public(self):
     staff = UserFactory.build(roles=[RoleFactory.build(name='staff')])
     creator = UserFactory.build(roles=[RoleFactory.build(name='staff')])
     admin = UserFactory.build(roles=[RoleFactory.build(name='admin')])
     opportunity = OpportunityFactory.build(
         is_public=True, planned_publish=self.yesterday,
         planned_submission_start=self.today, planned_submission_end=self.tomorrow,
         created_by=creator, created_by_id=creator.id,
         contact_id=creator.id
     )
     self.assertFalse(opportunity.can_edit(staff))
     self.assertFalse(opportunity.can_edit(creator))
     self.assertTrue(opportunity.can_edit(admin))
 def test_can_edit_is_public(self):
     staff = UserFactory.build(role=RoleFactory.build(name='staff'))
     creator = UserFactory.build(role=RoleFactory.build(name='staff'))
     admin = UserFactory.build(role=RoleFactory.build(name='admin'))
     opportunity = OpportunityFactory.build(
         is_public=True,
         planned_publish=self.yesterday,
         planned_submission_start=self.today,
         planned_submission_end=self.tomorrow,
         created_by=creator,
         created_by_id=creator.id,
         contact_id=creator.id)
     self.assertFalse(opportunity.can_edit(staff))
     self.assertFalse(opportunity.can_edit(creator))
     self.assertTrue(opportunity.can_edit(admin))
Beispiel #3
0
def role_build(collection=None, **id):
    """Build and return an uncommitted Role instance.
    Referenced scopes and/or collection are however committed."""
    return RoleFactory.build(
        **id,
        scopes=ScopeFactory.create_batch(randint(0, 3), type=choice(('odp', 'client'))),
        collection=collection or (collection := CollectionFactory() if randint(0, 1) else None),
        collection_id=collection.id if collection else None,
    )