@Test
public void shouldIterateOverPreProccessedParamValuesNonEncoding() throws Exception {

    List<EncodedPair> expected1 = asList(mock(EncodedPair.class), mock(EncodedPair.class));
    List<EncodedPair> expected2 = asList();
    List<EncodedPair> expected3 = asList(mock(EncodedPair.class));
    Param mockParam1 = mockParam(false, expected1);
    Param mockParam2 = mockParam(false, expected2);
    Param mockParam3 = mockParam(false, expected3);
    Iterator<EncodedPair> actual = ParamProcessors.iterate(asList(mockParam1, mockParam2, mockParam3), UTF8, false);
    assertTrue(actual.hasNext());
    assertEquals(expected1.get(0), actual.next());
    assertTrue(actual.hasNext());
    assertEquals(expected1.get(1), actual.next());
    assertTrue(actual.hasNext());
    assertEquals(expected3.get(0), actual.next());
    assertFalse(actual.hasNext());
}