AbstractExpressionEvaluator implements ExpressionEvaluator { protected boolean isStructuredInput(String className) { return ScenarioSimulationSharedUtils.isCollection(className); }  @Override Object evaluateLiteralExpression(String rawExpression, String className, List<String> genericClasses); @Override boolean evaluateUnaryExpression(String rawExpression, Object resultValue, Class<?> resultClass);  }
@Test public void isStructuredInput() { assertTrue(expressionEvaluatorLocal.isStructuredInput(List.class.getCanonicalName())); assertTrue(expressionEvaluatorLocal.isStructuredInput(ArrayList.class.getCanonicalName())); assertTrue(expressionEvaluatorLocal.isStructuredInput(LinkedList.class.getCanonicalName())); assertTrue(expressionEvaluatorLocal.isStructuredInput(Map.class.getCanonicalName())); assertTrue(expressionEvaluatorLocal.isStructuredInput(HashMap.class.getCanonicalName())); assertTrue(expressionEvaluatorLocal.isStructuredInput(LinkedHashMap.class.getCanonicalName())); assertFalse(expressionEvaluatorLocal.isStructuredInput(Set.class.getCanonicalName())); assertFalse(expressionEvaluatorLocal.isStructuredInput(Integer.class.getCanonicalName())); assertFalse(expressionEvaluatorLocal.isStructuredInput(String.class.getCanonicalName())); }