@Test
public void testDecode() {

    // przypadki testowe
    Object[][] testCases = {
        {"0", new IntegerHolder(0L)},
        {" -99", new IntegerHolder(-99L)},
        {null, new IntegerHolder(null)},
        {"\t \n", new IntegerHolder(null)}
    };
    // wykonanie testow
    for (Object[] testCase : testCases) {
        String text = (String) testCase[0];
        ValueHolder expectedHolder = (ValueHolder) testCase[1];
        ValueHolder holder = TypeDecoder.decode(type, text);
        assertEquals(expectedHolder.getValue(), holder.getValue());
    }
}