4it101»J Unit 17

J Unit 17

Asertace shody

Asertacie shody představuje nejběžnější způsob ověření výsledku v jednotkových testech. Používá se na srovnání očekávané hodnoty s hodnotou současnou. Porovnávané hodnoty mohou být buď ve formě konstanty nebo ve formě objektu. V následujícím příkladu je provedena kontrola dvou seznamů, kde je třeba zajistit oboustrannou kontrolu seznamů navzájem, což znamená, že dojde ke dvěma ověřením současně.


@Test
 public void testAsertacia4() {
    Objednavka objednavka = new Objednavka(123);
    ArrayList<IPolozka> seznamPolozek = objednavka.getSeznam();
    ArrayList<IPolozka> ocakavanySeznam = new ArrayList<>();

    Polozka polozka1 = new Polozka("názov", 456);
    Polozka polozka2 = new Polozka("názov", 789);

    objednavka.pridejPolozku(polozka1);
    objednavka.pridejPolozku(polozka2);

    ocakavanySeznam.add(polozka1);
    ocakavanySeznam.add(polozka2);

    //nutná je obojstranná kontrola seznamů navzájem
    assertEquals(true, seznamPolozek.containsAll(ocakavanySeznam));
    assertEquals(true, ocekavanySeznam.containsAll(seznamPolozek));
}