@Test
    public void generic() {
        ArrayList<Unit<Integer, String>> haystack = new ArrayList<Unit<Integer, String>>();
        int count = 100;
        for (int i = 0; i < count; i++) {
            if (i % 3 == 0) {
                continue;
            }
            haystack.add(new Unit<Integer, String>(i, String.valueOf(i)));
        }

        for (int i = 0; i < count; i++) {
            if (i % 3 == 0) {
                continue;
            }
            String result = search.find(haystack, i);
            Assert.assertEquals(String.valueOf(i), result);
        }

        for (int i = 0; i <= count; i++) {
            if (i % 3 == 0) {
                String result = search.find(haystack, i);
                Assert.assertEquals(null, result);
            }
        }
    }