def setUpTestData(cls): super().setUpTestData() cls.object_type = ObjectTypeFactory(service__api_root=OBJECT_TYPES_API) cls.another_object_type = ObjectTypeFactory(service=cls.object_type.service) PermissionFactory.create( object_type=cls.object_type, mode=PermissionModes.read_only, token_auth=cls.token_auth, ) PermissionFactory.create( object_type=cls.another_object_type, mode=PermissionModes.read_only, token_auth=cls.token_auth, )
def test_create_object_with_not_found_objecttype_url(self, m): object_type_invalid = ObjectTypeFactory( service=self.object_type.service) PermissionFactory.create( object_type=object_type_invalid, mode=PermissionModes.read_and_write, token_auth=self.token_auth, ) mock_service_oas_get(m, OBJECT_TYPES_API, "objecttypes") m.get(f"{object_type_invalid.url}/versions/1", status_code=404) url = reverse("object-list") data = { "type": object_type_invalid.url, "record": { "typeVersion": 1, "data": { "plantDate": "2020-04-12" }, "startAt": "2020-01-01", }, } response = self.client.post(url, data, **GEO_WRITE_KWARGS) self.assertEqual(response.status_code, status.HTTP_400_BAD_REQUEST) self.assertEqual(Object.objects.count(), 0)
def test_update_object_type_invalid(self, m): old_object_type = ObjectTypeFactory(service=self.object_type.service) PermissionFactory.create( object_type=old_object_type, mode=PermissionModes.read_and_write, token_auth=self.token_auth, ) mock_service_oas_get(m, OBJECT_TYPES_API, "objecttypes") m.get(self.object_type.url, json=mock_objecttype(self.object_type.url)) initial_record = ObjectRecordFactory.create( object__object_type=old_object_type, data={ "plantDate": "2020-04-12", "diameter": 30 }, version=1, ) object = initial_record.object url = reverse("object-detail", args=[object.uuid]) data = { "type": self.object_type.url, } response = self.client.patch(url, data, **GEO_WRITE_KWARGS) self.assertEqual(response.status_code, status.HTTP_400_BAD_REQUEST) data = response.json() self.assertEqual( data["type"], ["This field can't be changed"], )
def setUpTestData(cls): super().setUpTestData() cls.object_type = ObjectTypeFactory(service__api_root=OBJECT_TYPES_API) cls.object = ObjectFactory.create(object_type=cls.object_type) cls.record_1 = ObjectRecordFactory.create( object=cls.object, data={ "geslachtsnaam": "Poepenstaart", "voorletters": "JP", "geboortedatum": "1977-08-07", "burgerlijkestaat": "ongehuwd", }, start_at=date(1977, 8, 7), end_at=date(2001, 9, 3), registration_at=date(1977, 8, 15), ) cls.record_10 = ObjectRecordFactory.create( object=cls.object, data={ "geslachtsnaam": "Berg", "voorletters": "JP", "geboortedatum": "1977-08-07", "burgerlijkestaat": "ongehuwd", }, start_at=date(2001, 9, 3), end_at=date(2001, 9, 3), registration_at=date(2001, 9, 10), ) cls.record_40 = ObjectRecordFactory.create( object=cls.object, data={ "geslachtsnaam": "Bergh", "voorvoegsel": "van den", "voorletters": "JP", "geboortedatum": "1977-08-07", "burgerlijkestaat": "ongehuwd", }, start_at=date(2001, 9, 3), end_at=date(2005, 4, 23), registration_at=date(2001, 11, 2), ) cls.record_50 = ObjectRecordFactory.create( object=cls.object, data={ "geslachtsnaam": "Bergh", "voorvoegsel": "van den", "voorletters": "JP", "geboortedatum": "1977-08-07", "burgerlijkestaat": "gehuwd", }, start_at=date(2005, 4, 23), registration_at=date(2005, 4, 25), ) PermissionFactory.create( object_type=cls.object_type, mode=PermissionModes.read_and_write, token_auth=cls.token_auth, )
def setUpTestData(cls): super().setUpTestData() cls.object_type = ObjectTypeFactory(service__api_root=OBJECT_TYPES_API) PermissionFactory( object_type=cls.object_type, mode=PermissionModes.read_only, token_auth=cls.token_auth, ) ObjectRecordFactory.create_batch(10, object__object_type=cls.object_type, start_at=date.today())
def test_list_with_query_fields(self): other_object_type = ObjectTypeFactory() PermissionFactory.create( object_type=self.object_type, mode=PermissionModes.read_only, token_auth=self.token_auth, use_fields=True, fields={"1": ["url", "type", "record"]}, ) PermissionFactory.create( object_type=other_object_type, mode=PermissionModes.read_only, token_auth=self.token_auth, use_fields=True, fields={"1": ["url", "uuid", "record"]}, ) record1 = ObjectRecordFactory.create( object__object_type=self.object_type, data={"name": "some"}, version=1) record2 = ObjectRecordFactory.create( object__object_type=other_object_type, data={"name": "other"}, version=1) response = self.client.get(self.url, {"fields": "url,record__data"}) self.assertEqual(response.status_code, status.HTTP_200_OK) self.assertEqual( response.json(), [ { "url": f"http://testserver{reverse('object-detail', args=[record2.object.uuid])}", "record": { "data": { "name": "other" }, }, }, { "url": f"http://testserver{reverse('object-detail', args=[record1.object.uuid])}", "record": { "data": { "name": "some" }, }, }, ], ) self.assertNotIn("x-unauthorized-fields", response._headers)
def setUpTestData(cls): super().setUpTestData() cls.object_type = ObjectTypeFactory(service__api_root=OBJECT_TYPES_API)