Ejemplo n.º 1
0
    def setUp(self):
        self.phone_match = '9876543210'
        self.person_list = PersonFactory.create_batch(11)
        self.user = SuperUserFactory.create()
        GenericUserWithPermissions.add_permission(self.user, [
            {
                'group': 'PERSON_MANAGEMENT',
                'action': 'EDIT',
                'country': None,
                'station': None
            },
        ])
        self.client.force_authenticate(user=self.user)
        self.interceptee_list = IntercepteeIndiaNoPhotoFactory.create_batch(3)
        self.pb_list = PersonBoxIndiaFactory.create_batch(2)
        self.irf_list = IrfIndiaFactory.create_batch(2)
        self.cif_list = CifIndiaFactory.create_batch(2)

        self.interceptee_list[0].person = self.person_list[0]
        self.pb_list[0].person = self.person_list[0]
        self.pb_list[1].person = self.person_list[0]
        self.interceptee_list[1].person = self.person_list[1]
        self.cif_list[0].main_pv = self.person_list[2]
        self.interceptee_list[2].person = self.person_list[3]
        self.cif_list[1].main_pv = self.person_list[4]

        self.person_list[3].master_person = self.person_list[4].master_person

        self.person_list[3].phone_contact = self.phone_match + '01'
        self.person_list[4].phone_contact = self.phone_match + '02'

        self.person_list[3].full_name = "Raymond Smith"
        self.person_list[4].full_name = "Raymond Smythe"

        self.interceptee_list[0].interception_record = self.irf_list[0]
        self.interceptee_list[1].interception_record = self.irf_list[1]
        self.interceptee_list[2].interception_record = self.irf_list[1]

        self.pb_list[0].cif = self.cif_list[0]
        self.pb_list[1].cif = self.cif_list[1]

        for idx in range(0, 3):
            self.interceptee_list[idx].save()

        for idx in range(0, 2):
            self.pb_list[idx].save()

        for idx in range(0, 2):
            self.cif_list[idx].save()

        for idx in range(0, 5):
            self.person_list[idx].save()
Ejemplo n.º 2
0
    def test_address_related_items_swap(self):
        address2 = Address2Factory.create(canonical_name=Address2Factory.create())
        related_address2 = Address2Factory.create()
        related_address2.canonical_name = address2
        related_address2.save()

        person = PersonFactory.create(address2=address2)
        vif = VifFactory.create(victim_guardian_address2=address2)
        viflb = VictimInterviewLocationBoxFactory.create(address2=address2)

        url = reverse('Address2RelatedItemsSwap', args=[address2.id, related_address2.id])
        response = self.client.delete(url)

        self.assertEqual(response.status_code, status.HTTP_400_BAD_REQUEST)
Ejemplo n.º 3
0
    def test_remove_address1_with_related_items__should_not_work(self):
        address2 = Address2Factory.create()
        address1 = address2.address1
        person = PersonFactory.create(address1=address1)
        vif = VifFactory.create(victim_guardian_address1=address1)
        url = reverse('Address1detail', args=[address1.id])

        for related_object in [address2, person, vif]:
            response = self.client.delete(url)
            self.assertEqual(response.status_code, status.HTTP_409_CONFLICT)
            related_object.delete()

        # All related objects are deleted now, so the Address should be able to be deleted now
        response = self.client.delete(url)
        self.assertEqual(response.status_code, status.HTTP_204_NO_CONTENT)
    def setUp(self):
        self.phone_match = '9876543210'
        self.person_list = PersonFactory.create_batch(11)
        self.user = SuperUserFactory.create()
        self.client.force_authenticate(user=self.user)
        self.interceptee_list = IntercepteeNoPhotoFactory.create_batch(3)
        self.pb_list = PersonBoxFactory.create_batch(2)
        self.irf_list = IrfFactory.create_batch(2)
        self.vif_list = VifFactory.create_batch(2)
        self.alias_list = AliasGroupFactory.create_batch(1)

        self.interceptee_list[0].person = self.person_list[0]
        self.pb_list[0].person = self.person_list[0]
        self.pb_list[1].person = self.person_list[0]
        self.interceptee_list[1].person = self.person_list[1]
        self.vif_list[0].victim = self.person_list[2]
        self.interceptee_list[2].person = self.person_list[3]
        self.vif_list[1].victim = self.person_list[4]

        self.person_list[3].alias_group = self.alias_list[0]
        self.person_list[4].alias_group = self.alias_list[0]

        self.person_list[3].phone_contact = self.phone_match + '01'
        self.person_list[4].phone_contact = self.phone_match + '02'

        self.person_list[3].full_name = "Raymond Smith"
        self.person_list[4].full_name = "Raymond Smythe"

        self.interceptee_list[0].interception_record = self.irf_list[0]
        self.interceptee_list[1].interception_record = self.irf_list[1]
        self.interceptee_list[2].interception_record = self.irf_list[1]

        self.pb_list[0].victim_interview = self.vif_list[0]
        self.pb_list[1].victim_interview = self.vif_list[1]

        for idx in range(0,3):
            self.interceptee_list[idx].save()

        for idx in range(0,2):
            self.pb_list[idx].save()

        for idx in range(0,2):
            self.vif_list[idx].save()

        for idx in range(0,5):
            self.person_list[idx].save()
Ejemplo n.º 5
0
    def test_retrieve_related_items(self):
        address2 = Address2Factory.create()
        address1 = address2.address1
        person = PersonFactory.create(address1=address1)
        vif = VifFactory.create(victim_guardian_address1=address1)

        mapperD = {'person': person, 'victiminterview': vif, 'address2': address2 }

        url = reverse('Address1RelatedItems', args=[address1.id])
        response = self.client.get(url)

        self.assertEqual(response.status_code, status.HTTP_200_OK)
        self.assertEqual(response.data['id'], address1.id)

        related_items = response.data['related_items']
        for item in related_items:
            if item['type'] in mapperD:
                self.assertEqual(True, mapperD[item['type']].id in [obj['id'] for obj in item['objects']])
        self.assertEqual(response.data['id'], address1.id)
Ejemplo n.º 6
0
    def test_address_related_items_swap(self):
        address2 = Address2Factory.create()
        address1 = address2.address1
        new_address1 = Address1Factory.create()
        person = PersonFactory.create(address1=address1)
        vif = VifFactory.create(victim_guardian_address1=address1)
        viflb = VictimInterviewLocationBoxFactory.create(address1=address1)

        url = reverse('Address1RelatedItemsSwap', args=[address1.id, new_address1.id])
        response = self.client.delete(url)

        self.assertEqual(response.status_code, status.HTTP_200_OK)
        self.assertEqual(Address2.objects.filter(address1=address1).count(), 0)
        self.assertEqual(Person.objects.filter(address1=address1).count(), 0)
        self.assertEqual(VictimInterview.objects.filter(victim_guardian_address1=address1).count(), 0)
        self.assertEqual(VictimInterviewLocationBox.objects.filter(address1=address1).count(), 0)

        self.assertEqual(Person.objects.filter(address1=new_address1).count(), 1)
        self.assertEqual(Address2.objects.filter(address1=new_address1).count(), 1)
        self.assertEqual(VictimInterview.objects.filter(victim_guardian_address1=new_address1).count(), 1)
        self.assertEqual(VictimInterviewLocationBox.objects.filter(address1=new_address1).count(), 1)
Ejemplo n.º 7
0
    def gen_put_data(self):
        irf_qs = IrfCommon.objects.all()
        irf = irf_qs[0]
        irf.caught_in_lie = True
        irf.who_noticed = 'contact'
        irf.type_of_intercept = 'suspected'
        irf.contact_paid = True
        irf.which_contact = 'Bus driver'
        irf.number_of_victims = 1
        irf.number_of_traffickers = 0
        irf.logbook_received = datetime.datetime.now().date()

        irf.evidence_categorization = 'Evidence of Trafficking'
        irf.reason_for_intercept = 'Primary reason'
        irf.convinced_by_police = 'Police convinced or forced to stop'
        form = Form.current_form('IRF', irf.station.id)
        form_data = FormData(irf, form)

        form_category = FormCategory.objects.get(form=form, name='People')
        category = form_category.category

        interceptee = IntercepteeCommon()
        interceptee.interception_record = irf
        interceptee.kind = 'v'
        interceptee.person = PersonFactory.create()

        card_data = CardData(interceptee,
                             form_data.category_form_dict[category.id],
                             form_data=form_data)

        if form_data.card_dict[category.id] is None:
            form_data.card_dict[category.id] = []

        form_data.card_dict[category.id].append(card_data)

        return form_data