### Question:
ReportParametersUtils { public static Map<String, String[]> getValueMapFromInputControlStates(List<InputControlState> states) { Map<String, String[]> valueMap = new HashMap<String, String[]>(states.size()); for (InputControlState state : states) { if (state != null) valueMap.put(state.getId(), getValueFromInputControlState(state)); } return valueMap; }  static Map<String, String[]> getValueMapFromInputControlStates(List<InputControlState> states); static Map<String, String[]> getValueMapFromInputControls(List<ReportInputControl> inputControls);  }### Answer:
@Test public void getValueMapFromInputControlStates() { Map<String, String[]> actualValueMap = ReportParametersUtils.getValueMapFromInputControlStates(prepareStates()); Map<String, String[]> expectedValueMap = new HashMap<String, String[]>(); expectedValueMap.put("accountType", new String[]{"Consulting"}); expectedValueMap.put("industry", new String[]{"Communications"}); expectedValueMap.put("name", new String[]{"BestEngineering, Inc"}); expectedValueMap.put(null, new String[0]); expectedValueMap.put("address", new String[]{"address string"}); for (Map.Entry<String, String[]> entry : expectedValueMap.entrySet()) { String[] actualValue = actualValueMap.get(entry.getKey()); assertThat(entry.getValue(), equalTo(actualValue)); } }