private void generateMethodReturnType(AST ast, TypeDeclaration td, Operation operation, MethodDeclaration md) { Type type = operation.getType(); String umlTypeName = type.getName(); String umlQualifiedTypeName = type.getQualifiedName(); logger.log(Level.FINE, "UmlQualifiedTypeName: " + umlQualifiedTypeName + " - " + "umlTypeName: " + umlTypeName); if (operation.getUpper() >= 0) { // Upper Cardinality 0..1 // Only for parameterized type if (dataTypeUtils.isParameterizedType(umlTypeName)) { Map<String, String> types = umlHelper .checkParameterizedTypeForTemplateParameterSubstitution(type); umlTypeName = types.get("umlTypeName"); umlQualifiedTypeName = types.get("umlQualifiedTypeName"); } jdtHelper.createReturnType(ast, td, md, umlTypeName, umlQualifiedTypeName, sourceDirectoryPackageName); } else { // Upper Cardinality 0..* generateAssociationEndUpperCardinalityMultiples(ast, td, operation, md, umlTypeName, umlQualifiedTypeName); } }
@SuppressWarnings("unchecked") @Test public void testCheckParameterizedTypeForTemplateParameterSubstitutionWithNoSubstitution() { prepareMocks(); Iterator<Element> iteratorElement = mock(Iterator.class); when(iteratorElement.hasNext()).thenReturn(false); when(type.getName()).thenReturn("Data::datatype::Collection<Person>"); when(type.getQualifiedName()).thenReturn( "Data::datatype::Collection<de::test::Person>"); Map<String, String> results = umlHelper .checkParameterizedTypeForTemplateParameterSubstitution(type); String umlTypeName = results.get("umlTypeName"); String umlQualifiedTypeName = results.get("umlQualifiedTypeName"); assertEquals("Data::datatype::Collection<Person>", umlTypeName); assertEquals("Data::datatype::Collection<de::test::Person>", umlQualifiedTypeName); }
@Test public void testCheckParameterizedTypeForTemplateParameterSubstitution() { Classifier clazzifier = prepareMocks(); when(type.getName()).thenReturn("Data::datatype::Collection<Integer>"); when(type.getQualifiedName()).thenReturn( "Data::datatype::Collection<Integer>"); when(dataTypeUtils.isPrimitiveType(Mockito.anyString())).thenReturn( true); when(clazzifier.getName()).thenReturn("Integer"); when(clazzifier.getQualifiedName()).thenReturn( "Data::datatype::de::test::Integer"); Map<String, String> results = umlHelper .checkParameterizedTypeForTemplateParameterSubstitution(type); String umlTypeName = results.get("umlTypeName"); String umlQualifiedTypeName = results.get("umlQualifiedTypeName"); assertEquals("Data::datatype::Collection<Integer>", umlTypeName); assertEquals("Data::datatype::Collection<Integer>", umlQualifiedTypeName); }
.checkParameterizedTypeForTemplateParameterSubstitution(type); umlTypeName = types.get("umlTypeName"); umlQualifiedTypeName = types
when( umlHelper .checkParameterizedTypeForTemplateParameterSubstitution(type)) .thenReturn(types); doNothing().when(jdtHelper).createParameterTypes(ast, td, md,
.checkParameterizedTypeForTemplateParameterSubstitution(type); umlTypeName = types.get("umlTypeName"); umlQualifiedTypeName = types.get("umlQualifiedTypeName");