@Test public void testSetOuders() { /** * als het ouderlijk gezin van deze persoon nog onbekend is dan wordt deze persoon een kind van * ouderlijkGezin en tevens wordt deze persoon als kind in dat gezin geregistreerd */ Persoon mark = adm.addPersoon( Geslacht.MAN, new String[] {"Markus", "Anna"}, "sWinkelS", "", new GregorianCalendar(1986, Calendar.APRIL, 13), "venLO", null); int aantalKinderen = pietEnTeuntje.aantalKinderen(); mark.setOuders(pietEnTeuntje); assertEquals("ouders onbekend", pietEnTeuntje, mark.getOuderlijkGezin()); assertEquals("ouders geen kind erbij", aantalKinderen + 1, pietEnTeuntje.aantalKinderen()); List<Persoon> kinderen = pietEnTeuntje.getKinderen(); boolean gevonden = false; for (Persoon kind : kinderen) { if (kind == mark) { gevonden = true; } } assertTrue("ouders geen kind erbij", gevonden); /* * als de ouders bij aanroep al * bekend zijn, verandert er niets */ aantalKinderen = pietEnTeuntje.aantalKinderen(); mark.setOuders(pietEnTeuntje); assertEquals("ouders ten onrechte kind erbij", aantalKinderen, pietEnTeuntje.aantalKinderen()); }
/** Test van addPersoon methode in class Administratie. */ @Test public void testAddPersoon() { /* er wordt een persoon met een gegeven geslacht, met als voornamen vnamen, * achternaam anaam, tussenvoegsel tvoegsel, geboortedatum gebdat, * geboorteplaats gebplaats en een gegeven ouderlijk gezin;*/ assertEquals("geslacht onjuist", Geslacht.VROUW, teuntje.getGeslacht()); assertEquals("voornamen onjuist", "Teuntje", teuntje.getVoornamen()); assertEquals("voornamen onjuist", "Piet Franciscus", piet.getVoornamen()); assertEquals("tussenvoegsel onjuist", "", piet.getTussenvoegsel()); assertEquals("tussenvoegsel onjuist", "de", teuntje.getTussenvoegsel()); assertEquals( "geboortedatum onjuist", "23-4-1950", StringUtilities.datumString(piet.getGebDat())); assertEquals("geboorteplaats onjuist", "Ede", piet.getGebPlaats()); assertEquals("ouderlijk gezin onjuist", null, piet.getOuderlijkGezin()); Persoon jan = adm.addPersoon( Geslacht.MAN, new String[] {"Jan", "Jacobus"}, "Peters", "", new GregorianCalendar(1980, Calendar.APRIL, 23), "Venray", pietEnTeuntje); assertEquals("ouderlijk gezin onjuist", pietEnTeuntje, jan.getOuderlijkGezin()); /* de persoon * krijgt een uniek nummer toegewezen de persoon is voortaan ook bij het * ouderlijk gezin bekend. */ assertEquals("persoonsnummering onjuist", 1, piet.getNr()); assertEquals("persoonsnummering onjuist", 3, jan.getNr()); assertFalse( "kind niet bij ouderlijk gezin geregistreerd", pietEnTeuntje.getKinderen().isEmpty()); assertEquals( "kind niet bij ouderlijk gezin geregistreerd", jan, pietEnTeuntje.getKinderen().get(0)); /* Voor de voornamen, achternaam en gebplaats geldt * dat de eerste letter naar een hoofdletter en de resterende letters naar * een kleine letter zijn geconverteerd; het tussenvoegsel is zo nodig in * zijn geheel geconverteerd naar kleine letters.*/ Persoon tom = adm.addPersoon( Geslacht.MAN, new String[] {"tom", "JACOBUS"}, "sWinkelS", "VaN deR", new GregorianCalendar(1971, Calendar.APRIL, 13), "venLO", pietEnTeuntje); ArrayList<Persoon> swinkelsen = adm.getPersonenMetAchternaam("Swinkels"); assertEquals("zoeken op achternaam onjuist", 2, swinkelsen.size()); assertEquals("voornamen niet correct weergegeven", "Tom Jacobus", tom.getVoornamen()); assertEquals("achternaam niet correct weergegeven", "Swinkels", tom.getAchternaam()); assertEquals("geboorteplaats niet correct weergegeven", "Venlo", tom.getGebPlaats()); assertEquals("tussenvoegsel niet correct weergegeven", "van der", tom.getTussenvoegsel()); /* @return als de persoon al bekend was (op basis van combinatie van naam, * geboorteplaats en geboortedatum), wordt er null * geretourneerd, anders de nieuwe persoon*/ Persoon tom2 = adm.addPersoon( Geslacht.VROUW, new String[] {"t", "J"}, "sWinkelS", "VaN deR", new GregorianCalendar(1971, Calendar.APRIL, 13), "venLO", null); assertNull("unieke identificatie persoon onjuist", tom2); List<Persoon> kinderen = pietEnTeuntje.getKinderen(); assertEquals("aantal kinderen onjuist", 2, kinderen.size()); assertEquals("eerste kind ontbreekt", jan, kinderen.get(0)); assertEquals("tweede kind ontbreekt", tom, kinderen.get(1)); }