Search in sources :

Example 6 with ComponentFunctionParameterData

use of com.vaadin.generator.metadata.ComponentFunctionParameterData in project flow by vaadin.

the class ComponentGeneratorTest method classContainsOverloadedMethodsForMethodsThatAcceptMultipleTypes.

@Test
public void classContainsOverloadedMethodsForMethodsThatAcceptMultipleTypes() {
    ComponentFunctionParameterData firstParameter = new ComponentFunctionParameterData();
    firstParameter.setName("firstParam");
    firstParameter.setType(new HashSet<>(Arrays.asList(ComponentBasicType.STRING, ComponentBasicType.BOOLEAN)));
    ComponentFunctionParameterData secondParameter = new ComponentFunctionParameterData();
    secondParameter.setName("secondParam");
    secondParameter.setType(new HashSet<>(Arrays.asList(ComponentBasicType.STRING, ComponentBasicType.BOOLEAN)));
    ComponentFunctionData function = new ComponentFunctionData();
    function.setName("callSomething");
    function.setParameters(Arrays.asList(firstParameter, secondParameter));
    componentMetadata.setMethods(Collections.singletonList(function));
    String generatedClass = generator.generateClass(componentMetadata, "com.my.test", null);
    generatedClass = ComponentGeneratorTestUtils.removeIndentation(generatedClass);
    Assert.assertTrue(generatedClass.contains("public void callSomething(String firstParam, String secondParam)"));
    Assert.assertTrue(generatedClass.contains("public void callSomething(String firstParam, boolean secondParam)"));
    Assert.assertTrue(generatedClass.contains("public void callSomething(boolean firstParam, String secondParam)"));
    Assert.assertTrue(generatedClass.contains("public void callSomething(boolean firstParam, boolean secondParam)"));
}
Also used : ComponentFunctionParameterData(com.vaadin.generator.metadata.ComponentFunctionParameterData) CoreMatchers.containsString(org.hamcrest.CoreMatchers.containsString) ComponentFunctionData(com.vaadin.generator.metadata.ComponentFunctionData) Test(org.junit.Test)

Example 7 with ComponentFunctionParameterData

use of com.vaadin.generator.metadata.ComponentFunctionParameterData in project flow by vaadin.

the class ComponentGeneratorTest method generateClassWithMethodWithParameters_methodContainsParamInJavaDoc.

@Test
public void generateClassWithMethodWithParameters_methodContainsParamInJavaDoc() {
    ComponentFunctionData functionData = new ComponentFunctionData();
    functionData.setName("my-method");
    functionData.setDescription("This is my method documentation.");
    ComponentFunctionParameterData parameter = new ComponentFunctionParameterData();
    parameter.setName("text");
    parameter.setType(Collections.singleton(ComponentBasicType.STRING));
    functionData.setParameters(Collections.singletonList(parameter));
    componentMetadata.setMethods(Collections.singletonList(functionData));
    String generatedClass = generator.generateClass(componentMetadata, "com.my.test", null);
    Assert.assertTrue("JavaDoc for method parameter text was not found", generatedClass.contains("* @param " + parameter.getName()));
}
Also used : ComponentFunctionParameterData(com.vaadin.generator.metadata.ComponentFunctionParameterData) CoreMatchers.containsString(org.hamcrest.CoreMatchers.containsString) ComponentFunctionData(com.vaadin.generator.metadata.ComponentFunctionData) Test(org.junit.Test)

Aggregations

ComponentFunctionParameterData (com.vaadin.generator.metadata.ComponentFunctionParameterData)7 ComponentFunctionData (com.vaadin.generator.metadata.ComponentFunctionData)6 CoreMatchers.containsString (org.hamcrest.CoreMatchers.containsString)6 Test (org.junit.Test)6 ComponentObjectType (com.vaadin.generator.metadata.ComponentObjectType)2 ComponentObjectTypeInnerType (com.vaadin.generator.metadata.ComponentObjectType.ComponentObjectTypeInnerType)2 ComponentPropertyData (com.vaadin.generator.metadata.ComponentPropertyData)1 ComponentType (com.vaadin.generator.metadata.ComponentType)1 ArrayList (java.util.ArrayList)1 Arrays (java.util.Arrays)1 List (java.util.List)1 TreeSet (java.util.TreeSet)1