Пример #1
0
 @Before
 public void setUp() {
   controller = new StamboomController();
   adm = controller.getAdministratie();
   piet =
       adm.addPersoon(
           Geslacht.MAN,
           new String[] {"Piet", "Franciscus"},
           "Swinkels",
           "",
           new GregorianCalendar(1950, Calendar.APRIL, 23),
           "ede",
           null);
   teuntje =
       adm.addPersoon(
           Geslacht.VROUW,
           new String[] {"Teuntje"},
           "Vries",
           "de",
           new GregorianCalendar(1949, Calendar.MAY, 5),
           "Amersfoort",
           null);
   pietEnTeuntje = adm.addHuwelijk(piet, teuntje, new GregorianCalendar(1970, Calendar.MAY, 23));
   nu = GregorianCalendar.getInstance();
 }
Пример #2
0
  @Test
  public void testSetEnIsHuwelijk() {
    /**
     * registreert het huwelijk, mits dit gezin nog geen huwelijk is en beide ouders op deze datum
     * mogen trouwen (pas op: ook de toekomst kan hierbij een rol spelen omdat toekomstige gezinnen
     * eerder zijn geregisteerd)
     */
    Persoon annie =
        adm.addPersoon(
            Geslacht.VROUW,
            new String[] {"Annie", "Gedula"},
            "Dael",
            "",
            new GregorianCalendar(1981, Calendar.APRIL, 3),
            "Bergen op Zoom",
            null);
    Persoon jan =
        adm.addPersoon(
            Geslacht.MAN,
            new String[] {"Jan", "Jacobus"},
            "Peters",
            "",
            new GregorianCalendar(1980, Calendar.APRIL, 23),
            "Venray",
            pietEnTeuntje);
    Gezin annieEnJan = adm.addOngehuwdGezin(annie, jan);

    assertFalse("is geen huwelijk", annieEnJan.isHuwelijkOp(nu));
    /*
     *
     * @param datum de huwelijksdatum
     * @return false als huwelijk niet mocht worden voltrokken, anders true
     */
    Calendar huwdatum = new GregorianCalendar(2008, Calendar.FEBRUARY, 3);
    Calendar laterDanHuwdatum = new GregorianCalendar(2008, Calendar.FEBRUARY, 4);
    Calendar eerderDanHuwdatum = new GregorianCalendar(2008, Calendar.FEBRUARY, 2);
    assertTrue("huwelijk is niet voltrokken", annieEnJan.setHuwelijk(huwdatum));
    assertTrue("huwelijksdatum later invoeren onjuist", annieEnJan.isHuwelijkOp(nu));
    assertTrue("huwelijksdatum invoeren onjuist", annieEnJan.isHuwelijkOp(laterDanHuwdatum));
    assertFalse("huwelijksdatum invoeren onjuist", annieEnJan.isHuwelijkOp(eerderDanHuwdatum));

    assertFalse("huwelijk is ten onrechte voltrokken", annieEnJan.setHuwelijk(nu));
    assertEquals("2e huwelijksdatum invoeren onjuist", huwdatum, annieEnJan.getHuwelijksdatum());

    /* (pas op: ook de toekomst kan
     * hierbij een rol spelen omdat toekomstige gezinnen eerder zijn
     * geregisteerd)*/
    Persoon pim =
        adm.addPersoon(
            Geslacht.MAN,
            new String[] {"Pim"},
            "Pieterse",
            "VaN deR",
            new GregorianCalendar(1985, Calendar.APRIL, 13),
            "venLO",
            null);
    Gezin annieEnPim = adm.addHuwelijk(annie, pim, eerderDanHuwdatum);
    assertNull("huwelijk niet toegestaan vanwege toekomstig huwelijk", annieEnPim);
  }
Пример #3
0
  @Test
  public void testAddHuwelijk() {
    /** als er al een ongehuwd gezin voor dit koppel bestaat, wordt het huwelijk voltrokken */
    Persoon annie =
        adm.addPersoon(
            Geslacht.VROUW,
            new String[] {"Annie", "Gedula"},
            "Dael",
            "",
            new GregorianCalendar(1981, Calendar.APRIL, 3),
            "Bergen op Zoom",
            null);
    Persoon jan =
        adm.addPersoon(
            Geslacht.MAN,
            new String[] {"Jan", "Jacobus"},
            "Peters",
            "",
            new GregorianCalendar(1980, Calendar.APRIL, 23),
            "Venray",
            pietEnTeuntje);
    Gezin annieEnJan = adm.addOngehuwdGezin(annie, jan);
    Gezin huwelijk = adm.addHuwelijk(jan, annie, nu);
    assertEquals("ongehuwd gezin trouwt", huwelijk, annieEnJan);
    assertEquals("huwelijksdatum bekend", nu, huwelijk.getHuwelijksdatum());
    assertNull("scheidingsdatum onbekend", huwelijk.getScheidingsdatum());

    /* anders wordt er zo mogelijk (zie return) een
     * (kinderloos) gehuwd gezin met ouder1 en ouder2 als ouders gecreeerd;
     * de scheidingsdatum is onbekend (null); */
    Persoon trees =
        adm.addPersoon(
            Geslacht.VROUW,
            new String[] {"trees", "Gedula"},
            "Dael",
            "van",
            new GregorianCalendar(1981, Calendar.APRIL, 3),
            "Sevenum",
            null);
    Persoon jaap =
        adm.addPersoon(
            Geslacht.MAN,
            new String[] {"Jaap"},
            "Giesbers",
            "",
            new GregorianCalendar(1980, Calendar.APRIL, 23),
            "Venray",
            null);
    Gezin treesEnJaap =
        adm.addHuwelijk(trees, jaap, new GregorianCalendar(2013, Calendar.APRIL, 23));
    assertTrue("geen kinderen", treesEnJaap.getKinderen().isEmpty());
    assertTrue("gehuwd gezin", treesEnJaap.isHuwelijkOp(nu));
    assertEquals("ouder1 is trees", trees, treesEnJaap.getOuder1());
    assertEquals("ouder2 is jaap", jaap, treesEnJaap.getOuder2());
    /*
     * scheidingsdatum is onbekend (null);
     */
    assertNull("scheidingsdatum onbekend", treesEnJaap.getScheidingsdatum());
    /* het gezin krijgt een uniek nummer toegewezen */
    assertEquals("nummering van gezin lijkt onjuist", 3, treesEnJaap.getNr());
    /* dit gezin wordt ook bij de afzonderlijke ouders geregistreerd;
     */
    assertFalse("registratie bij ouders onjuist", trees.getAlsOuderBetrokkenIn().isEmpty());
    assertFalse("registratie bij ouders onjuist", jaap.getAlsOuderBetrokkenIn().isEmpty());
    assertEquals(
        "registratie bij ouders onjuist", treesEnJaap, jaap.getAlsOuderBetrokkenIn().get(0));
    assertEquals(
        "registratie bij ouders onjuist", treesEnJaap, trees.getAlsOuderBetrokkenIn().get(0));

    Persoon petra =
        adm.addPersoon(
            Geslacht.VROUW,
            new String[] {"Petra", "Gedula"},
            "Dael",
            "",
            new GregorianCalendar(1981, Calendar.APRIL, 3),
            "Bergen op Zoom",
            null);
    Persoon roel =
        adm.addPersoon(
            Geslacht.MAN,
            new String[] {"Roel", "Jacobus"},
            "Peters",
            "",
            new GregorianCalendar(1983, Calendar.APRIL, 23),
            "Venray",
            pietEnTeuntje);
    Gezin petraEnRoel = adm.addOngehuwdGezin(petra, roel);

    Persoon john =
        adm.addPersoon(
            Geslacht.MAN,
            new String[] {"John", "Adriaan"},
            "Krop",
            "",
            new GregorianCalendar(1973, Calendar.JANUARY, 3),
            "Eindhoven",
            pietEnTeuntje);
    Gezin johnEnRoel = adm.addHuwelijk(john, roel, nu);
    assertNotNull(
        "huwelijk waarvoor een van de partners bij een ongehuwd gezin betrokken is", johnEnRoel);

    /*het gezin krijgt een uniek nummer toegewezen;*/
    assertEquals("nummering van gezin lijkt onjuist", petraEnRoel.getNr() + 1, johnEnRoel.getNr());

    /**
     * @return null als ouder1 = ouder2 of als een van de ouders getrouwd is anders het gehuwde
     *     gezin
     */
    Persoon pim =
        adm.addPersoon(
            Geslacht.MAN,
            new String[] {"Pim"},
            "sWinkelS",
            "VaN deR",
            new GregorianCalendar(1995, Calendar.APRIL, 13),
            "venLO",
            pietEnTeuntje);

    assertNull("ouders verschillend", adm.addHuwelijk(pim, pim, nu));
    assertNull("ouders ongehuwd", adm.addHuwelijk(roel, pim, Calendar.getInstance()));
    assertNull("ouders ongehuwd", adm.addHuwelijk(pim, roel, Calendar.getInstance()));

    Calendar datum1 = new GregorianCalendar(1995, Calendar.APRIL, 13);
    Calendar datum2 = new GregorianCalendar(1996, Calendar.APRIL, 13);
    Calendar datum3 = new GregorianCalendar(1996, Calendar.APRIL, 14);
    Calendar datum4 = new GregorianCalendar(1996, Calendar.APRIL, 15);

    // merk op: datum1 < datum2 < datum3 < datum4
    Persoon miep =
        adm.addPersoon(
            Geslacht.VROUW,
            new String[] {"miep"},
            "Dael",
            "",
            new GregorianCalendar(1981, Calendar.APRIL, 3),
            "Bergen op Zoom",
            null);
    Persoon jacco =
        adm.addPersoon(
            Geslacht.MAN,
            new String[] {"Jacco", "Jacobus"},
            "Hop",
            "",
            new GregorianCalendar(1983, Calendar.APRIL, 23),
            "Venray",
            null);
    Gezin miepEnJacco = adm.addHuwelijk(miep, jacco, datum1);
    miepEnJacco.setScheiding(datum3);

    Persoon aafke =
        adm.addPersoon(
            Geslacht.VROUW,
            new String[] {"aafke"},
            "Dael",
            "",
            new GregorianCalendar(1981, Calendar.APRIL, 3),
            "Bergen op Zoom",
            null);
    assertNull("jacco is nog getrouwd", adm.addHuwelijk(aafke, jacco, datum2));
    assertNotNull("jacco is niet meer getrouwd", adm.addHuwelijk(aafke, jacco, datum4));

    Persoon frank =
        adm.addPersoon(
            Geslacht.MAN,
            new String[] {"Frank", "Johan"},
            "Kroes",
            "",
            new GregorianCalendar(1983, Calendar.APRIL, 23),
            "Helmond",
            null);

    assertNull("aafke is naderhand getrouwd", adm.addHuwelijk(aafke, frank, datum1));
  }