### Question:
EndpointNaming { public String getFilename() { return String.format("%s/%s.%s", getPackageName(), getName(), getExtension()); } EndpointNaming(String lang, String input);  EndpointNaming(String input); EndpointNaming action(String action); EndpointNaming transformer(String transformer); EndpointNaming hook(String hook); EndpointNaming pipe(String pipe); EndpointNaming pipeSink(String sink); String getName(); String getPackageName(); String getPath(); String getFilename(); String getTestName(); String getTestFilename(); String getInstance(); String getShieldName(); String getShieldFilename(); String getActionName(); String getActionFilename(); String getTransformerName(); String getTransformerFilename(); String getHookName(); String getHookFilename(); String getPipeName(); String getPipeSinkName(); String getPipeSinkInstance(); String getPipeFilename(); String parsePath(String sourceMain); String whitespaces(String value);  }### Answer:
@Test public void testEndpointFilename() { assertEquals("person/Person.java", new EndpointNaming("Person").getFilename()); assertEquals("personaddress/PersonAddress.java", new EndpointNaming("PersonAddress").getFilename()); }