Hamcrest gyűjtemények szakácskönyve

1. Bemutatkozás

Ez a szakácskönyv bemutatja, hogyan kell használja a Hamcrest párosokat a kollekciók kezeléséhez és teszteléséhez.

A a szakácskönyv formátuma példaértékű praktikus - nincs szükség idegen részletekre és magyarázatokra.

Először végezzünk egy gyors statikus importálást, hogy lefedjük a legtöbb segédprogram API-t, amelyeket legközelebb használunk:

statikus org.hamcrest.Matchers importálása; *;

2. Szakácskönyv

ellenőrizze, hogy egyetlen elem szerepel-e a gyűjteményben

Listagyűjtemény = Lists.newArrayList ("ab", "cd", "ef"); assertThat (gyűjtemény, hasItem ("cd")); assertThat (gyűjtemény, nem (hasItem ("zz")));

ellenőrizze, hogy több elem szerepel-e a gyűjteményben

Listagyűjtemény = Lists.newArrayList ("ab", "cd", "ef"); assertThat (gyűjtemény, hasItems ("cd", "ef"));

ellenőrizze a gyűjtemény összes elemét

- szigorú rendeléssel

Listagyűjtemény = Lists.newArrayList ("ab", "cd", "ef"); assertThat (gyűjtemény, tartalmazza ("ab", "cd", "ef"));

- bármilyen megrendeléssel

Listagyűjtemény = Lists.newArrayList ("ab", "cd", "ef"); assertThat (gyűjtemény, tartalmazzaInAnyOrder ("cd", "ab", "ef"));

ellenőrizze, hogy a gyűjtemény üres-e

Listagyűjtemény = Lists.newArrayList (); assertThat (gyűjtemény, üres ());

ellenőrizze, hogy a tömb üres-e

Karakterlánc [] tömb = új karakterlánc [] {"ab"}; assertThat (tömb, nem (emptyArray ()));

ellenőrizze, hogy a Térkép üres-e

Térképgyűjtemény = Maps.newHashMap (); assertThat (gyűjtemény, equalTo (Gyűjtemények.EMPTY_MAP));

ellenőrizze, hogy az Iterable üres-e

Iterálható gyűjtemény = Lists.newArrayList (); assertThat (gyűjtemény, emptyIterable ());

ellenőrizze a gyűjtemény méretét

Listagyűjtemény = Lists.newArrayList ("ab", "cd", "ef"); assertThat (gyűjtemény, hasSize (3));

iterálható méretének ellenőrzése

Iterálható gyűjtemény = Lists.newArrayList ("ab", "cd", "ef"); assertThat (gyűjtemény, Matchers. iterableWithSize (3));

ellenőrizze minden elem állapotát

Lista gyűjtemény = Lists.newArrayList (15, 20, 25, 30); assertThat (gyűjtemény, minden elem (nagyobbThan (10)));

3. Következtetés

Ez a formátum kísérlet - közzéteszek néhány belső fejlesztési szakácskönyvemet egy adott témáról - a Google Guava és most a Hamcrest. A cél az, hogy ezek az információk könnyen elérhetőek legyenek online - és kiegészüljenek velük, amikor új hasznos példával találkozom.

Mindezen példák és kódrészletek megvalósítása megtalálható a GitHubon - ez egy Maven-alapú projekt, ezért könnyen importálhatónak és futtathatónak kell lennie.