Asertace shody s tolerancí
Při asertaci shody s tolerancí jde o totožný princip porovnávání jako v případě asertace shody. Rozdílem ale je, že asertáce shody s tolerancí nepožaduje absolutní rovnost porovnávaných objektů, respektive rovnost konstanty a objektu. To je vhodné pro případy, kdy není nutně nezbytné ověřovat absolutní shodu a je tak možná akceptace ve formě rozdílu porovnávaných hodnot v určených intencích, které jsou stanoveny parametrům delta v metodě assertEquals(). V následujícím příkladu dochází k ověření výpočtu DPH v objednávce. Přirozeně je možné očekávat práci s čísly s mnoha desetinnými místy, které ale po určité hodnotě ztrácejí význam. Proto je tedy možné, v odůvodněných případech, přistoupit k akceptaci jisté míry tolerance mezi srovnávanými hodnotami.
@Test
public void testAsertacia5() {
Objednavka objednavka = new Objednavka(123);
Polozka polozka1 = new Polozka("název", 456);
polozka1.setCena(15.99);
objednavka.pridejPolozku(polozka1);
Polozka polozka2 = new Polozka("název", 789);
polozka2.setCena(22.95);
objednavka.pridejPolozku(polozka2);
//skutecny vysledek je 3.894,
//pri nastavene toleranci 0.004 test skonci uspesne
assertEquals(3.89, objednavka.getDPH(), 0.004);
}