@Test
public void testTwoRelatedProvidedResourcesOfSameType() throws TemplateModelException {
AMWTemplateExceptionHandler templateExceptionHandler = new AMWTemplateExceptionHandler();
ResourceEntity ws2 = builder.buildResource(builder.typeFor(WS.type), "ws2");
builder.buildProvidedRelation(builder.app, builder.ws, ForeignableOwner.AMW);
builder.buildProvidedRelation(builder.app, ws2, ForeignableOwner.AMW);
AppServerRelationProperties properties = new AppServerRelationProperties(builder.context, builder.app, templateExceptionHandler);
for (ProvidedResourceRelationEntity relation : builder.app.getProvidedMasterRelations()) {
ResourceEntity slaveResource = relation.getSlaveResource();
properties.addProvidedRelation(slaveResource.getName(), slaveResource, relation);
}
assertEquals(2, properties.getProvided().size());
AmwResourceTemplateModel hash = properties.transformModel();
assertEquals("app", hash.get("label").toString());
assertNull(hash.get("propertyTypes"));
assertEquals(TestUtils.asHashModel(hash, "providedResTypes", "Webservice", "ws").get("label").toString(), "ws");
assertNull(TestUtils.asHashModel(hash, "providedResTypes", "Webservice", "ws").get("propertyTypes"));
assertEquals(TestUtils.asHashModel(hash, "providedResTypes", "Webservice", "ws2").get("label").toString(), "ws2");
assertNull(TestUtils.asHashModel(hash, "providedResTypes", "Webservice", "ws2").get("propertyTypes"));
hash = properties.transformModel();
assertTrue(templateExceptionHandler.isSuccess());
}