use of org.molgenis.api.metadata.v3.model.CreateAttributeRequest in project molgenis by molgenis.
the class AttributeRequestMapperTest method toAttributes.
@Test
void toAttributes() {
Attribute attribute = mock(Attribute.class);
when(attributeFactory.create()).thenReturn(attribute);
CreateAttributeRequest createAttributeRequest = CreateAttributeRequest.builder().setId("MyAttributeId").setName("MyAttributeName").setType("long").setRange(Range.create(-1L, 1L)).build();
CreateEntityTypeRequest entityTypeRequest = CreateEntityTypeRequest.builder().setLabel(I18nValue.builder().setDefaultValue("My Entity Type").build()).setPackage("MyPackageId").setAttributes(ImmutableList.of(createAttributeRequest)).build();
EntityType entityType = mock(EntityType.class);
List<Attribute> attributes = attributeRequestMapper.toAttributes(singletonList(createAttributeRequest), entityTypeRequest, entityType);
assertAll(() -> assertEquals(1, attributes.size()), () -> verify(attribute).setIdAttribute(null), () -> verify(attribute).setLabelAttribute(null), () -> verify(attribute).setLookupAttributeIndex(null), () -> verify(attribute).setIdentifier("MyAttributeId"), () -> verify(attribute).setName("MyAttributeName"), () -> verify(attribute).setEntity(entityType), () -> verify(attribute).setSequenceNumber(0), () -> verify(attribute).setDataType(AttributeType.LONG), () -> verify(attribute).setOrderBy(null), () -> verify(attribute).setExpression(null), () -> verify(attribute).setRange(new org.molgenis.data.Range(-1L, 1L)), () -> verify(attribute).setNullableExpression(null), () -> verify(attribute).setVisibleExpression(null), () -> verify(attribute).setValidationExpression(null), () -> verify(attribute).setDefaultValue(null), () -> verify(attribute).getIdentifier(), () -> verifyNoMoreInteractions(attribute));
}
use of org.molgenis.api.metadata.v3.model.CreateAttributeRequest in project molgenis by molgenis.
the class AttributeRequestMapperImpl method resolveMappedBy.
private void resolveMappedBy(List<CreateAttributeRequest> attributes, Map<String, Attribute> attributeMap, String parentEntityId) {
for (CreateAttributeRequest attributeRequest : attributes) {
if (attributeRequest.getMappedByAttribute() != null) {
Attribute mappedBy;
if (attributeMap.containsKey(attributeRequest.getMappedByAttribute())) {
mappedBy = attributeMap.get(attributeRequest.getMappedByAttribute());
} else {
mappedBy = getAttributeFromParent(parentEntityId, attributeRequest);
}
if (mappedBy != null) {
Attribute attr = attributeMap.get(attributeRequest.getId());
attr.setMappedBy(mappedBy);
}
}
}
}
Aggregations