Search in sources :

Example 56 with Entity

use of org.motechproject.mds.domain.Entity in project motech by motech.

the class InstancesWriterTest method shouldWriteMultiValueComboboxProperty.

@Test
public void shouldWriteMultiValueComboboxProperty() throws Exception {
    Entity entity = EntitySchemaBuilder.eude(ENTITY).field(PROPERTY, "mds.field.combobox").setting(ALLOW_MULTIPLE_SELECTIONS, TRUE).metadata(ENUM_CLASS_NAME, ABC.class.getName()).done().build();
    List<ABC> combobox = asList(ABC.A, ABC.C);
    assertInstanceWrittenCorrectly(entity, new EntityWithProperty<>(1L, combobox), "{\"refId\":1,\"property\":[\"A\", \"C\"]}");
}
Also used : Entity(org.motechproject.mds.domain.Entity) Test(org.junit.Test)

Example 57 with Entity

use of org.motechproject.mds.domain.Entity in project motech by motech.

the class InstancesWriterTest method shouldWriteSingleValueComboboxProperty.

@Test
public void shouldWriteSingleValueComboboxProperty() throws Exception {
    Entity entity = EntitySchemaBuilder.eude(ENTITY).field(PROPERTY, "mds.field.combobox").setting(ALLOW_MULTIPLE_SELECTIONS, FALSE).metadata(ENUM_CLASS_NAME, "org.motechproject.mds.json.InstanceWriterTest.ABC").done().build();
    ABC combobox = ABC.A;
    assertInstanceWrittenCorrectly(entity, new EntityWithProperty<>(1L, combobox), "{\"refId\":1,\"property\":\"A\"}");
}
Also used : Entity(org.motechproject.mds.domain.Entity) Test(org.junit.Test)

Example 58 with Entity

use of org.motechproject.mds.domain.Entity in project motech by motech.

the class InstancesWriterTest method shouldWriteManyRefIdRelationshipProperty.

@Test
public void shouldWriteManyRefIdRelationshipProperty() throws Exception {
    Entity entity = EntitySchemaBuilder.eude(ENTITY).field(PROPERTY, "mds.field.relationship.oneToMany").metadata(RELATED_CLASS, EntityWithProperty.class.getName()).metadata(RELATED_FIELD, PROPERTY).done().build();
    EntityWithProperty<ArrayList<EntityWithProperty>> instance = new EntityWithProperty<>(1L, new ArrayList<EntityWithProperty>());
    EntityWithProperty<EntityWithProperty> relatedInstanceOne = new EntityWithProperty<EntityWithProperty>(42L, instance);
    EntityWithProperty<EntityWithProperty> relatedInstanceTwo = new EntityWithProperty<EntityWithProperty>(57L, instance);
    instance.getProperty().add(relatedInstanceOne);
    instance.getProperty().add(relatedInstanceTwo);
    assertInstanceWrittenCorrectly(entity, instance, "{\"refId\":1,\"property\":[42,57]}");
}
Also used : Entity(org.motechproject.mds.domain.Entity) ArrayList(java.util.ArrayList) Test(org.junit.Test)

Example 59 with Entity

use of org.motechproject.mds.domain.Entity in project motech by motech.

the class InstancesWriterTest method shouldWriteNullForNullBlobProperty.

@Test
public void shouldWriteNullForNullBlobProperty() throws Exception {
    Entity entity = EntitySchemaBuilder.eude(ENTITY).field(PROPERTY, "mds.field.blob").done().build();
    byte[] blob = null;
    EntityWithProperty<byte[]> instance = new EntityWithProperty<>(1L, blob);
    when(dataService.getDetachedField(eq(instance), eq(PROPERTY))).thenReturn(blob);
    assertInstanceWrittenCorrectly(entity, instance, NULL_PROPERTY_JSON);
}
Also used : Entity(org.motechproject.mds.domain.Entity) Test(org.junit.Test)

Example 60 with Entity

use of org.motechproject.mds.domain.Entity in project motech by motech.

the class InstancesWriterTest method shouldWriteBlobProperty.

@Test
public void shouldWriteBlobProperty() throws Exception {
    Entity entity = EntitySchemaBuilder.eude(ENTITY).field(PROPERTY, "mds.field.blob").done().build();
    byte[] blob = "This is blob!".getBytes();
    EntityWithProperty<byte[]> instance = new EntityWithProperty<>(1L, blob);
    when(dataService.getDetachedField(eq(instance), eq(PROPERTY))).thenReturn(blob);
    assertInstanceWrittenCorrectly(entity, instance, "{\"refId\":1,\"property\":\"VGhpcyBpcyBibG9iIQ==\"}");
}
Also used : Entity(org.motechproject.mds.domain.Entity) Test(org.junit.Test)

Aggregations

Entity (org.motechproject.mds.domain.Entity)97 Test (org.junit.Test)35 Field (org.motechproject.mds.domain.Field)33 MdsEntity (org.motechproject.mds.domain.MdsEntity)32 MdsVersionedEntity (org.motechproject.mds.domain.MdsVersionedEntity)32 Transactional (org.springframework.transaction.annotation.Transactional)32 ArrayList (java.util.ArrayList)14 Lookup (org.motechproject.mds.domain.Lookup)12 UserPreferences (org.motechproject.mds.domain.UserPreferences)8 Type (org.motechproject.mds.domain.Type)7 AllUserPreferences (org.motechproject.mds.repository.internal.AllUserPreferences)7 EntityDto (org.motechproject.mds.dto.EntityDto)6 LookupFieldDto (org.motechproject.mds.dto.LookupFieldDto)6 HashMap (java.util.HashMap)5 FieldDto (org.motechproject.mds.dto.FieldDto)5 HashSet (java.util.HashSet)4 EntityDraft (org.motechproject.mds.domain.EntityDraft)4 MotechDataService (org.motechproject.mds.service.MotechDataService)4 Query (javax.jdo.Query)3 FieldSetting (org.motechproject.mds.domain.FieldSetting)3