@Test
public void testParameterValuesWithStringsOnly() throws Exception {

    Map<String, WorkDefinitionImpl> repoResults = WorkItemRepository.getWorkDefinitions(getClass().getResource("repository").toURI().toString());
    assertNotNull(repoResults);
    assertFalse(repoResults.isEmpty());
    assertEquals(repoResults.size(), 9);
    WorkDefinitionImpl testServiceWithParamValuesTwo = repoResults.get("TestServiceWithParamValuesTwo");
    assertNotNull(testServiceWithParamValuesTwo);
    assertNotNull(testServiceWithParamValuesTwo.getParameterValues());
    Map<String, Object> parameterValues = testServiceWithParamValuesTwo.getParameterValues();
    assertNotNull(parameterValues);
    assertEquals(parameterValues.size(), 2);
    for( Map.Entry<String, Object> entry : parameterValues.entrySet() ) {
        assertTrue( entry.getValue() instanceof  String );
        assertNotNull( entry.getValue());
        if (entry.getKey().equals("param1")) {
            String paramValue = (String) entry.getValue();
            List<String> paramValueList = Arrays.asList(paramValue.split(","));
            assertNotNull(paramValueList);
            assertEquals(3, paramValueList.size());
            assertTrue(paramValueList.contains("one"));
            assertTrue(paramValueList.contains("two"));
            assertTrue(paramValueList.contains("three"));
        } else if(entry.getKey().equals("param3")) {
            String paramValue = (String) entry.getValue();
            List<String> paramValueList = Arrays.asList(paramValue.split(","));
            assertNotNull(paramValueList);
            assertEquals(3, paramValueList.size());
            assertTrue(paramValueList.contains("four"));
            assertTrue(paramValueList.contains("five"));
            assertTrue(paramValueList.contains("six"));
        } else {
            fail("invalid parameter name");
        }
    }
}