def setUpTestData(cls): group1 = GroupFactory(name='Group1') group2 = GroupFactory(name='Group2') cls.user1 = UserFactory(username='******') cls.user2 = UserFactory(username='******') cls.user1.groups = [group1] cls.user2.groups = [group2] Permission.objects.bulk_create([ Permission(user_type='Group1', permission='edit', target='parent.field'), Permission(user_type='Group1', permission='edit', target='parent.children2'), Permission(user_type='Group1', permission='edit', target='child2.field'), Permission(user_type='Group1', permission='view', target='child2.field2'), Permission(user_type='Group2', permission='view', target='parent.field'), Permission(user_type='Group2', permission='view', target='parent.children2'), Permission(user_type='Group2', permission='edit', target='child2.field2'), ]) class Child2Serializer(PermissionsBasedSerializerMixin, WritableNestedSerializerMixin, serializers.ModelSerializer): class Meta(PermissionsBasedSerializerMixin.Meta, WritableNestedSerializerMixin.Meta): model = Child2 fields = ['id', 'field'] permission_class = Permission class ParentSerializer(PermissionsBasedSerializerMixin, WritableNestedSerializerMixin, serializers.ModelSerializer): children2 = Child2Serializer(many=True) class Meta(PermissionsBasedSerializerMixin.Meta, WritableNestedSerializerMixin.Meta): model = Parent fields = ['id', 'field', 'children2'] permission_class = Permission cls.ParentSerializer = ParentSerializer
def setUpTestData(cls): group1 = GroupFactory(name='Group1') group2 = GroupFactory(name='Group2') cls.user1 = UserFactory(username='******') cls.user2 = UserFactory(username='******') cls.user3 = UserFactory(username='******') cls.user1.groups = [group1] cls.user2.groups = [group2] cls.user3.groups = [group1, group2]
def setUp(self): self.unicef_staff = UserFactory(is_staff=True) self.unicef_superuser = UserFactory(is_superuser=True) self.partnership_manager_user = UserFactory(is_staff=True) self.group = GroupFactory() self.partnership_manager_user.groups.add(self.group) self.url = reverse('users_v2:myprofile-detail')
def setUpTestData(cls): cls.unicef_staff = UserFactory(is_staff=True) cls.unicef_staff.groups.add(GroupFactory(name='Partnership Manager')) cls.partner = PartnerFactory() cls.planned_visit = PartnerPlannedVisitsFactory(partner=cls.partner, ) cls.url = reverse("partners_api:partner-planned-visits-del", args=[cls.planned_visit.pk])
def setUp(self): self.unicef_staff = UserFactory(is_staff=True) self.unicef_superuser = UserFactory(is_superuser=True) self.partnership_manager_user = UserFactory(is_staff=True) self.group = GroupFactory() self.partnership_manager_user.groups.add(self.group) self.url = reverse("users_v3:users-list")
def setUpTestData(cls): cls.unicef_staff = UserFactory(is_staff=True) group = GroupFactory(name='Partnership Manager') cls.unicef_staff.groups.add(group) cls.intervention = InterventionFactory( start=datetime.date(2001, 1, 1), status=Intervention.DRAFT, in_amendment=True, )
def test_group_set_is_cached(self): f = TenantFlagFactory() group = GroupFactory() f.groups.add(group) f.save() self.user.groups.add(group) with self.assertNumQueries(4): self.assertTrue(f.is_active(self.request)) with self.assertNumQueries(1): # we still need to query the user's list of groups self.assertTrue(f.is_active(self.request))
def setUpTestData(cls): cls.unicef_staff = UserFactory(is_staff=True) group = GroupFactory(name='Partnership Manager') cls.unicef_staff.groups.add(group) cls.intervention = InterventionFactory( start=datetime.date(2001, 1, 1), status=Intervention.DRAFT, in_amendment=True, ) cls.url = reverse( "reports:interventions-special-reporting-requirements", kwargs={'intervention_pk': cls.intervention.id})
def setUpTestData(cls): cls.unicef_staff = UserFactory(is_staff=True) cls.partner = PartnerFactory( partner_type=PartnerType.CIVIL_SOCIETY_ORGANIZATION, cso_type="International", hidden=False, vendor_number="DDD", short_name="Short name", ) cls.partner_staff = PartnerStaffFactory(partner=cls.partner) cls.partnership_manager_user = UserFactory(is_staff=True) cls.partnership_manager_user.groups.add(GroupFactory()) cls.partnership_manager_user.profile.partner_staff_member = cls.partner_staff.id cls.partnership_manager_user.save()
def setUp(self): self.unicef_staff = UserFactory(is_superuser=True) group = GroupFactory() self.unicef_staff.groups.add(group) # The tested endpoints require the country id in the query string self.country = CountryFactory() self.unicef_staff.profile.country = self.country self.unicef_staff.save() self.location_no_geom = LocationFactory(name="Test no geom") self.location_with_geom = LocationFactory( name="Test with geom", geom="MultiPolygon(((10 10, 10 20, 20 20, 20 15, 10 10)), ((10 10, 10 20, 20 20, 20 15, 10 10)))" )
def setUpTestData(cls): cls.unicef_staff = UserFactory(is_staff=True) cls.partnership_manager_user = UserFactory(is_staff=True) cls.partnership_manager_user.groups.add(GroupFactory()) cls.partner1 = PartnerFactory( partner_type=PartnerType.CIVIL_SOCIETY_ORGANIZATION) cls.country_programme = CountryProgrammeFactory() cls.agreement1 = AgreementFactory( partner=cls.partner1, signed_by_unicef_date=datetime.date.today()) cls.intervention = InterventionFactory(agreement=cls.agreement1) cls.intervention_2 = InterventionFactory(agreement=cls.agreement1, document_type=Intervention.PD) cls.amendment = AgreementAmendment.objects.create( agreement=cls.agreement1, types=[AgreementAmendment.IP_NAME, AgreementAmendment.CLAUSE], number="001", signed_amendment="application/pdf", signed_date=datetime.date.today())
def setUp(self): super().setUp() self.unicef_staff = UserFactory(is_superuser=True) group = GroupFactory() self.unicef_staff.groups.add(group) self.country = CountryFactory() self.unicef_staff.profile.country = self.country self.unicef_staff.save() self.partner = PartnerFactory() self.agreement = AgreementFactory(partner=self.partner) self.intervention = InterventionFactory(agreement=self.agreement) self.location_no_geom = LocationFactory(name="Test no geom") self.location_with_geom = LocationFactory( name="Test with geom", geom= "MultiPolygon(((10 10, 10 20, 20 20, 20 15, 10 10)), ((10 10, 10 20, 20 20, 20 15, 10 10)))" ) self.inactive_location = LocationFactory(is_active=False) self.locations = [self.location_no_geom, self.location_with_geom]
def setUpTestData(cls): cls.user = UserFactory(is_staff=True) cls.pme_user = UserFactory() cls.group = GroupFactory(name="PME") cls.pme_user.groups.add(cls.group)
def setUpTestData(cls): cls.user = UserFactory(is_staff=True) cls.pme_user = UserFactory() cls.group = GroupFactory(name="PME") cls.pme_user.groups.add(cls.group) cls.url = reverse('reports:disaggregation-list-create')
def test_manager(self): user = UserFactory() user.groups.add(GroupFactory(name="Partnership Manager")) self.assertTrue(partnership_manager_only(None, user))
def setUpTestData(cls): cls.readonly_group = GroupFactory(name=READ_ONLY_API_GROUP_NAME)
def setUpTestData(cls): cls.unicef_staff = UserFactory(is_staff=True) cls.unicef_superuser = UserFactory(is_superuser=True) cls.partnership_manager_user = UserFactory(is_staff=True) cls.group = GroupFactory() cls.partnership_manager_user.groups.add(cls.group)
def setUpTestData(cls): cls.url = reverse("partners_api:partner-add") cls.user = UserFactory(is_staff=True) cls.user.groups.add(GroupFactory())
def setUp(self): self.unicef_superuser = UserFactory(is_superuser=True) self.partnership_manager_user = UserFactory(is_staff=True) self.group = GroupFactory() self.partnership_manager_user.groups.add(self.group)
def setUpTestData(cls): cls.group = GroupFactory(name="UNICEF User")
def setup_intervention_test_data(test_case, include_results_and_indicators=False): today = datetime.date.today() test_case.unicef_staff = UserFactory(is_staff=True) test_case.partnership_manager_user = UserFactory(is_staff=True) test_case.partnership_manager_user.groups.add(GroupFactory()) test_case.partner = PartnerFactory(name='Partner 1', vendor_number="VP1") test_case.partner1 = PartnerFactory(name='Partner 2') test_case.agreement = AgreementFactory( partner=test_case.partner, signed_by_unicef_date=datetime.date.today()) test_case.active_agreement = AgreementFactory( partner=test_case.partner1, status='active', signed_by_unicef_date=datetime.date.today(), signed_by_partner_date=datetime.date.today()) test_case.intervention = InterventionFactory(agreement=test_case.agreement, title='Intervention 1') test_case.intervention_2 = InterventionFactory( agreement=test_case.agreement, title='Intervention 2', document_type=Intervention.PD, ) test_case.active_intervention = InterventionFactory( agreement=test_case.active_agreement, title='Active Intervention', document_type=Intervention.PD, start=today - datetime.timedelta(days=1), end=today + datetime.timedelta(days=90), status='active', signed_by_unicef_date=today - datetime.timedelta(days=1), signed_by_partner_date=today - datetime.timedelta(days=1), unicef_signatory=test_case.unicef_staff, partner_authorized_officer_signatory=test_case.partner1.staff_members. all().first()) test_case.result_type = ResultType.objects.get_or_create( name=ResultType.OUTPUT)[0] test_case.result = ResultFactory(result_type=test_case.result_type) test_case.partnership_budget = InterventionBudget.objects.create( intervention=test_case.intervention, unicef_cash=10, unicef_cash_local=100, partner_contribution=20, partner_contribution_local=200, in_kind_amount_local=10, ) # set up two frs not connected to any interventions test_case.fr_1 = FundsReservationHeaderFactory(intervention=None, currency='USD') test_case.fr_2 = FundsReservationHeaderFactory(intervention=None, currency='USD') if include_results_and_indicators: # setup additional inicator/results test_case.result = ResultFactory(name='A Result') test_case.result_link = InterventionResultLink.objects.create( intervention=test_case.active_intervention, cp_output=test_case.result) test_case.lower_result = LowerResult.objects.create( result_link=test_case.result_link, name='Lower Result 1') test_case.indicator_blueprint = IndicatorBlueprint.objects.create( title='The Blueprint') test_case.applied_indicator = AppliedIndicator.objects.create( indicator=test_case.indicator_blueprint, lower_result=test_case.lower_result, ) test_case.applied_indicator.locations.add( LocationFactory(name='A Location', gateway=GatewayTypeFactory(name='A Gateway'), p_code='a-p-code')) test_case.disaggregation = test_case.applied_indicator.disaggregation.create( name='A Disaggregation') test_case.file_type_attachment = AttachmentFileTypeFactory( code="partners_intervention_attachment") test_case.file_type_prc = AttachmentFileTypeFactory( code="partners_intervention_prc_review") test_case.file_type_pd = AttachmentFileTypeFactory( code="partners_intervention_signed_pd")