Skip to content

Commit

Permalink
Testaa organisaatioiden linkitys
Browse files Browse the repository at this point in the history
  • Loading branch information
ilkkahanninen committed Jan 3, 2024
1 parent d17b944 commit 23cae80
Showing 1 changed file with 34 additions and 1 deletion.
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ import fi.oph.koski.henkilo.{KoskiSpecificMockOppijat, LaajatOppijaHenkilöTiedo
import fi.oph.koski.henkilo.KoskiSpecificMockOppijat.{master, masterEiKoskessa}
import fi.oph.koski.json.{JsonFiles, JsonSerializer}
import fi.oph.koski.koskiuser.MockUsers
import fi.oph.koski.organisaatio.MockOrganisaatiot
import fi.oph.koski.organisaatio.{MockOrganisaatiot, Organisaatiotyyppi}
import fi.oph.koski.schema.KoskiSchema.strictDeserialization
import fi.oph.koski.schema._
import fi.oph.koski.util.Wait
Expand Down Expand Up @@ -187,6 +187,39 @@ class RaportointikantaSpec

verifioiYtrOpiskeluoikeudet()
}
"Organisaatiot ovat linkitetty oikein" in {
def verifyOrg(parentOid: Option[String], childOid: Option[String]) = {
(parentOid, childOid) match {
case (Some(parent), Some(child)) =>
KoskiApplicationForTests.organisaatioRepository
.getChildOids(parent)
.getOrElse(Set.empty) should contain(child)
case (_, None) =>
throw new AssertionError("childOid ei voi olla None")
case (None, _) =>
throw new AssertionError("parentOid ei voi olla None")
}
}

mainRaportointiDb.runDbSync(mainRaportointiDb.ROrganisaatiot.result)
.foreach { row: ROrganisaatioRow =>
val tyypit = row.organisaatiotyypit.split(',')
if (tyypit.contains(Organisaatiotyyppi.TOIMIPISTE)) {
verifyOrg(row.oppilaitos, Some(row.organisaatioOid))
verifyOrg(row.koulutustoimija, row.oppilaitos)
} else if (
tyypit.contains(Organisaatiotyyppi.OPPILAITOS) ||
tyypit.contains(Organisaatiotyyppi.VARHAISKASVATUKSEN_TOIMIPAIKKA) ||
tyypit.contains(Organisaatiotyyppi.OPPISOPIMUSTOIMIPISTE)
) {
row.oppilaitos should equal(None)
verifyOrg(row.koulutustoimija, Some(row.organisaatioOid))
} else {
row.oppilaitos should equal(None)
row.koulutustoimija should equal(None)
}
}
}

def verifioiYtrOpiskeluoikeudet() = {
val ytrOotRaportointikannassa = mainRaportointiDb.runDbSync(
Expand Down

0 comments on commit 23cae80

Please sign in to comment.