Example #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()
    def setUp(self):
        form_data_file = settings.BASE_DIR + '/fixtures/initial-required-data/form_data.json'
        call_command('loaddata', form_data_file, verbosity=0)
        self.irf_list = IrfIndiaFactory.create_batch(20)
        self.user = GenericUserWithPermissions.create([{
            'group': 'IRF',
            'action': 'VIEW',
            'country': None,
            'station': None
        }, {
            'group': 'IRF',
            'action': 'EDIT',
            'country': None,
            'station': None
        }, {
            'group': 'IRF',
            'action': 'ADD',
            'country': None,
            'station': None
        }])

        for name in [
                'create master person', 'add to master person', 'create match',
                'update match', 'remove from master person',
                'merge master persons', 'deactivate master person'
        ]:
            match_action = MatchAction()
            match_action.name = name
            match_action.save()

        self.client.force_authenticate(user=self.user)
        self.form = Form.objects.get(form_name='irfIndia')
        self.form.stations.add(MbzStationFactory())
Example #3
0
 def setUp(self):
     self.factory = APIRequestFactory()
     self.user = GenericUserWithPermissions.create([
         {
             'group': 'BUDGETS',
             'action': 'VIEW',
             'country': None,
             'station': None
         },
         {
             'group': 'BUDGETS',
             'action': 'ADD',
             'country': None,
             'station': None
         },
         {
             'group': 'BUDGETS',
             'action': 'EDIT',
             'country': None,
             'station': None
         },
         {
             'group': 'BUDGETS',
             'action': 'DELETE',
             'country': None,
             'station': None
         },
     ])
     self.client = APIClient()
     self.client.force_authenticate(user=self.user)
     self.border_station = BorderStationFactory()
    def test_doesnt_have_permission(self):
        self.bad_user = GenericUserWithPermissions.create([])
        self.client.force_authenticate(user=self.bad_user)

        # get
        url = reverse('irfNew')
        response = self.client.get(url)
        self.assertEqual(response.status_code, status.HTTP_200_OK)
        self.assertEqual(response.data['count'], 0)
Example #5
0
    def testUpdateBudgetSheetStation(self):
        user = GenericUserWithPermissions.create([
            {
                'group': 'BUDGETS',
                'action': 'VIEW',
                'country': None,
                'station': None
            },
            {
                'group': 'BUDGETS',
                'action': 'ADD',
                'country': None,
                'station': None
            },
            {
                'group': 'BUDGETS',
                'action': 'EDIT',
                'country': None,
                'station': self.border_station
            },
        ])
        client = APIClient()
        client.force_authenticate(user=user)

        response = client.post(
            '/api/budget/', {
                "border_station": self.border_station.pk,
                "month_year": "2017-04-15T23:53:08.996000Z"
            })
        budget_id = response.data.get('id')
        self.assertEqual(response.status_code, 201)

        response = client.get('/api/budget/' + str(budget_id) + '/')
        budget_id = response.data.get('id')
        self.assertEqual(response.status_code, 200)

        response = client.put(
            '/api/budget/' + str(budget_id) + '/', {
                "border_station": self.border_station.pk,
                "shelter_water_amount": 2,
                "month_year": "2017-04-15T23:53:08.996000Z"
            })
        budget_id = response.data.get('id')
        self.assertEqual(response.status_code, 200)

        response = client.get('/api/budget/' + str(budget_id) + '/')

        shelter_water_amount = response.data["shelter_water_amount"]
        self.assertEqual(response.data.get('id'), budget_id)
        self.assertEqual(response.status_code, 200)
        self.assertEqual(shelter_water_amount, '2.00')
Example #6
0
    def testRemoveBudgetSheetStationNoPermission(self):
        border_station = BorderStationFactory()
        user = GenericUserWithPermissions.create([
            {
                'group': 'BUDGETS',
                'action': 'VIEW',
                'country': None,
                'station': None
            },
            {
                'group': 'BUDGETS',
                'action': 'ADD',
                'country': None,
                'station': None
            },
            {
                'group': 'BUDGETS',
                'action': 'DELETE',
                'country': None,
                'station': border_station
            },
        ])
        client = APIClient()
        client.force_authenticate(user=user)

        response = client.get('/api/budget/')
        self.assertEqual(response.status_code, 200)
        self.assertEqual(len(response.data['results']), 0)

        response = client.post(
            '/api/budget/', {
                "border_station": self.border_station.pk,
                "month_year": "2017-04-15T23:53:08.996000Z"
            })
        budget_id = response.data.get('id')
        self.assertEqual(response.status_code, 201)

        response = client.get('/api/budget/')
        self.assertEqual(response.status_code, 200)
        self.assertEqual(len(response.data['results']), 1)

        # delete the form
        response = client.delete('/api/budget/' + str(budget_id) + '/')
        self.assertEqual(response.status_code, 403)

        # count the remaining forms
        response = client.get('/api/budget/')
        self.assertEqual(response.status_code, 200)
        self.assertEqual(len(response.data['results']), 1)
Example #7
0
 def testCreateBudgetSheetNoPermission(self):
     user = GenericUserWithPermissions.create([
         {
             'group': 'BUDGETS',
             'action': 'VIEW',
             'country': None,
             'station': None
         },
     ])
     client = APIClient()
     client.force_authenticate(user=user)
     response = client.post(
         '/api/budget/', {
             "border_station": self.border_station.pk,
             "month_year": "2017-05-15T23:53:08.996000Z"
         })
     self.assertEqual(response.status_code, 403)