def test_zet_eigenschappen(self): zaak = ZaakFactory.create() eigenschap = EigenschapFactory.create(eigenschapnaam="foobar") url = get_operation_url("zaakeigenschap_create", zaak_uuid=zaak.uuid) zaak_url = get_operation_url("zaak_read", uuid=zaak.uuid) eigenschap_url = reverse(eigenschap) data = { "zaak": zaak_url, "eigenschap": eigenschap_url, "waarde": "overlast_water", } response = self.client.post(url, data) self.assertEqual(response.status_code, status.HTTP_201_CREATED, response.data) response_data = response.json() zaakeigenschap = ZaakEigenschap.objects.get() self.assertEqual(zaakeigenschap.zaak, zaak) detail_url = get_operation_url( "zaakeigenschap_read", zaak_uuid=zaak.uuid, uuid=zaakeigenschap.uuid ) self.assertEqual( response_data, { "url": f"http://testserver{detail_url}", "uuid": str(zaakeigenschap.uuid), "naam": "foobar", "zaak": f"http://testserver{zaak_url}", "eigenschap": f"http://testserver{eigenschap_url}", "waarde": "overlast_water", }, )
def zet_statussen_resultaat(self): statustype = StatusTypeFactory.create(zaaktype=self.references["zaaktype"]) statustype_url = reverse(statustype) statustype_overlast_geconstateerd = StatusTypeFactory.create( zaaktype=self.references["zaaktype"] ) statustype_overlast_geconstateerd_url = reverse( statustype_overlast_geconstateerd ) resultaattype = ResultaatTypeFactory.create( zaaktype=self.references["zaaktype"], archiefactietermijn="P10Y", archiefnominatie=Archiefnominatie.blijvend_bewaren, brondatum_archiefprocedure_afleidingswijze=BrondatumArchiefprocedureAfleidingswijze.afgehandeld, ) resultaattype_url = reverse(resultaattype) status_create_url = get_operation_url("status_create") resultaat_create_url = get_operation_url("resultaat_create") created = parser.parse(self.data["datetime"]) self.client.post( status_create_url, { "zaak": self.references["zaak_url"], "statustype": f"http://testserver{statustype_url}", "datumStatusGezet": created.isoformat(), }, ) self.client.post( resultaat_create_url, { "zaak": self.references["zaak_url"], "resultaattype": f"http://testserver{resultaattype_url}", "toelichting": "", }, ) self.client.post( status_create_url, { "zaak": self.references["zaak_url"], "statustype": f"http://testserver{statustype_overlast_geconstateerd_url}", "datumStatusGezet": parser.parse( self.data["datetime_overlast"] ).isoformat(), }, ) self.references["statustype"] = statustype self.references[ "statustype_overlast_geconstateerd" ] = statustype_overlast_geconstateerd
def test_create_aanvraag(self): """ Maak een zaak voor een aanvraag. """ zaaktype = ZaakTypeFactory.create() zaaktype_url = reverse(zaaktype) zaak_create_url = get_operation_url("zaak_create") data = { "zaaktype": f"http://testserver{zaaktype_url}", "vertrouwelijkheidaanduiding": VertrouwelijkheidsAanduiding.openbaar, "bronorganisatie": "517439943", "verantwoordelijkeOrganisatie": VERANTWOORDELIJKE_ORGANISATIE, "identificatie": "HLM-straatartiest-42", "omschrijving": "Dagontheffing - Station Haarlem", "toelichting": "Het betreft een clown met grote trom, mondharmonica en cymbalen.", "startdatum": "2018-08-15", } # aanmaken zaak response = self.client.post(zaak_create_url, data, **ZAAK_WRITE_KWARGS) self.assertEqual(response.status_code, status.HTTP_201_CREATED, response.data) data = response.json() self.assertIn("identificatie", data) self.assertEqual(data["registratiedatum"], date.today().strftime("%Y-%m-%d")) self.assertEqual(data["startdatum"], "2018-08-15")
def registreer_zaak(self): zaaktype = ZaakTypeFactory.create() zaaktype_url = reverse(zaaktype) zaak_create_url = get_operation_url("zaak_create") created = parser.parse(self.data["datetime"]) intern_id = self.data["id"] response = self.client.post( zaak_create_url, { "zaaktype": f"http://testserver{zaaktype_url}", "vertrouwelijkheidaanduiding": VertrouwelijkheidsAanduiding.openbaar, "bronorganisatie": "517439943", "verantwoordelijkeOrganisatie": VERANTWOORDELIJKE_ORGANISATIE, "identificatie": f"WATER_{intern_id}", "registratiedatum": created.strftime("%Y-%m-%d"), "startdatum": created.strftime("%Y-%m-%d"), "toelichting": self.data["text"], "zaakgeometrie": self.data["coordinates"], }, **ZAAK_WRITE_KWARGS, ) self.references["zaak_url"] = response.json()["url"] self.references["zaaktype"] = zaaktype
def registreer_domein_data(self): eigenschap_objecttype = EigenschapFactory.create(eigenschapnaam="melding_type") eigenschap_objecttype_url = reverse(eigenschap_objecttype) eigenschap_naam_boot = EigenschapFactory.create( eigenschapnaam="waternet_naam_boot" ) eigenschap_naam_boot_url = reverse(eigenschap_naam_boot) zaak_uuid = self.references["zaak_url"].rsplit("/")[-1] url = get_operation_url("zaakeigenschap_create", zaak_uuid=zaak_uuid) self.client.post( url, { "zaak": self.references["zaak_url"], "eigenschap": f"http://testserver{eigenschap_objecttype_url}", "waarde": "overlast_water", }, ) self.client.post( url, { "zaak": self.references["zaak_url"], "eigenschap": f"http://testserver{eigenschap_naam_boot_url}", "waarde": TEST_DATA["waternet_naam_boot"], }, ) self.references["eigenschap_naam_boot"] = eigenschap_naam_boot
def test_add_resultaat_on_zaak_with_einddatum_causes_archiefactiedatum_to_be_set( self): """ Add RESULTAAT that causes `archiefactiedatum` to be set. """ zaak = ZaakFactory.create(einddatum=date(2019, 1, 1)) zaak_url = get_operation_url("zaak_read", uuid=zaak.uuid) resultaattype = ResultaatTypeFactory.create( archiefactietermijn="P10Y", archiefnominatie=Archiefnominatie.blijvend_bewaren, brondatum_archiefprocedure_afleidingswijze= BrondatumArchiefprocedureAfleidingswijze.afgehandeld, zaaktype=zaak.zaaktype, ) resultaattype_url = reverse(resultaattype) resultaat_create_url = get_operation_url("resultaat_create") data = { "zaak": zaak_url, "resultaattype": resultaattype_url, "toelichting": "" } self.assertIsNone(zaak.archiefactiedatum) response = self.client.post(resultaat_create_url, data) self.assertEqual(response.status_code, status.HTTP_201_CREATED, response.data) # add final status to the case to close it and to calculate archive parameters statustype = StatusTypeFactory.create(zaaktype=zaak.zaaktype) statustype_url = reverse(statustype) status_create_url = get_operation_url("status_create") data = { "zaak": zaak_url, "statustype": statustype_url, "datumStatusGezet": "2018-10-18T20:00:00Z", } response = self.client.post(status_create_url, data) self.assertEqual(response.status_code, status.HTTP_201_CREATED, response.data) zaak.refresh_from_db() self.assertEqual(zaak.archiefactiedatum, date(2028, 10, 18))
def registreer_klantcontact(self): url = get_operation_url("klantcontact_create") self.client.post( url, { "zaak": self.references["zaak_url"], "datumtijd": self.data["datetime"], "kanaal": self.data["source"], }, )
def test_add_resultaat_on_zaak_with_incorrect_eigenschap_fails(self): """ Attempt to add RESULTAAT with incorrect ZTC-configuration. """ zaak = ZaakFactory.create() zaak_url = get_operation_url("zaak_read", uuid=zaak.uuid) resultaattype = ResultaatTypeFactory.create( archiefactietermijn="P10Y", archiefnominatie=Archiefnominatie.blijvend_bewaren, brondatum_archiefprocedure_afleidingswijze= BrondatumArchiefprocedureAfleidingswijze.eigenschap, brondatum_archiefprocedure_datumkenmerk="brondatum", zaaktype=zaak.zaaktype, ) resultaattype_url = reverse(resultaattype) # add resultaat resultaat_create_url = get_operation_url("resultaat_create") data = { "zaak": zaak_url, "resultaattype": resultaattype_url, "toelichting": "" } response = self.client.post(resultaat_create_url, data) self.assertEqual(response.status_code, status.HTTP_201_CREATED, response.data) # add final status to the case to close it and to calculate archive parameters statustype = StatusTypeFactory.create(zaaktype=zaak.zaaktype) statustype_url = reverse(statustype) status_create_url = get_operation_url("status_create") data = { "zaak": zaak_url, "statustype": statustype_url, "datumStatusGezet": "2018-10-18T20:00:00Z", } response = self.client.post(status_create_url, data) self.assertEqual(response.status_code, status.HTTP_400_BAD_REQUEST)
def test_can_set_archiefstatus_when_archiefnominatie_and_archiefactiedatum_already_set( self): zaak = ZaakFactory.create( archiefnominatie=Archiefnominatie.vernietigen, archiefactiedatum=date.today(), ) zaak_patch_url = get_operation_url("zaak_partial_update", uuid=zaak.uuid) data = {"archiefstatus": Archiefstatus.gearchiveerd} response = self.client.patch(zaak_patch_url, data, **ZAAK_WRITE_KWARGS) self.assertEqual(response.status_code, status.HTTP_200_OK, response.data)
def test_can_set_archiefstatus_with_archiefnominatie_and_archiefactiedatum( self): zaak = ZaakFactory.create() zaak_patch_url = get_operation_url("zaak_partial_update", uuid=zaak.uuid) data = { "archiefnominatie": Archiefnominatie.vernietigen, "archiefactiedatum": date(2019, 1, 1), "archiefstatus": Archiefstatus.gearchiveerd, } response = self.client.patch(zaak_patch_url, data, **ZAAK_WRITE_KWARGS) self.assertEqual(response.status_code, status.HTTP_200_OK, response.data)