Search in sources :

Example 16 with Record

use of org.motechproject.mds.testutil.records.Record in project motech by motech.

the class AbstractObjectValueGeneratorTest method shouldReturnExistingValue.

@Test
public void shouldReturnExistingValue() {
    Record src = new Record();
    PropertyUtil.safeSetProperty(src, getPropertyName(), getExpectedValue(false));
    Object expected = PropertyUtil.safeGetProperty(src, getPropertyName());
    Object actual = getGenerator().generate(null, src, null);
    assertNotNull(actual);
    assertEquals(expected, actual);
}
Also used : Record(org.motechproject.mds.testutil.records.Record) Test(org.junit.Test)

Example 17 with Record

use of org.motechproject.mds.testutil.records.Record in project motech by motech.

the class HistoryServiceTest method shouldCreateNewRecord.

@Test
public void shouldCreateNewRecord() throws Exception {
    Entity entity = mock(Entity.class);
    Field idField = mock(Field.class);
    doReturn("id").when(idField).getName();
    Type idType = mock(Type.class);
    doReturn(idType).when(idField).getType();
    doReturn(Long.class.getName()).when(idType).getTypeClassName();
    doReturn(Long.class).when(idType).getTypeClass();
    Field valueField = mock(Field.class);
    doReturn("value").when(valueField).getName();
    Type valueType = mock(Type.class);
    doReturn(valueType).when(valueField).getType();
    doReturn(String.class.getName()).when(valueType).getTypeClassName();
    doReturn(String.class).when(valueType).getTypeClass();
    Field dateField = mock(Field.class);
    doReturn("date").when(dateField).getName();
    Type dateType = mock(Type.class);
    doReturn(dateType).when(dateField).getType();
    doReturn(Date.class.getName()).when(dateType).getTypeClassName();
    doReturn(Date.class).when(dateType).getTypeClass();
    doReturn(17L).when(entity).getEntityVersion();
    doReturn(true).when(entity).isRecordHistory();
    doReturn(Arrays.asList(idField, valueField, dateField)).when(entity).getFields();
    doReturn(null).when(query).execute(anyLong());
    final String serviceName = ClassName.getServiceName(Record.class.getName());
    doReturn(true).when(applicationContext).containsBean(serviceName);
    doReturn(dataService).when(applicationContext).getBean(serviceName);
    doReturn(4L).when(dataService).getSchemaVersion();
    Record instance = new Record();
    historyService.record(instance);
    verify(manager).makePersistent(recordHistoryCaptor.capture());
    Record__History history = recordHistoryCaptor.getValue();
    assertEquals(instance.getId(), history.getRecord__HistoryCurrentVersion());
    assertEquals(Long.valueOf(4), history.getRecord__HistorySchemaVersion());
    assertEquals(instance.getValue(), history.getValue());
    assertEquals(instance.getDate(), history.getDate());
}
Also used : Entity(org.motechproject.mds.domain.Entity) Field(org.motechproject.mds.domain.Field) Type(org.motechproject.mds.domain.Type) Matchers.anyLong(org.mockito.Matchers.anyLong) Record(org.motechproject.mds.testutil.records.Record) Matchers.anyString(org.mockito.Matchers.anyString) Record__History(org.motechproject.mds.testutil.records.history.Record__History) Date(java.util.Date) PrepareForTest(org.powermock.core.classloader.annotations.PrepareForTest) Test(org.junit.Test)

Example 18 with Record

use of org.motechproject.mds.testutil.records.Record in project motech by motech.

the class MdsDataProviderTest method shouldFindByRelatedField.

@Test
public void shouldFindByRelatedField() {
    Map<String, String> lookupMap = new HashMap<>();
    lookupMap.put("related.stringVar", VALUE);
    Object result = dataProvider.lookup(Record.class.getName(), "relatedLookup", lookupMap);
    assertNotNull(result);
    assertTrue("Wrong type returned", result instanceof Record);
    Record record = (Record) result;
    assertEquals("found by related field", record.getValue());
}
Also used : HashMap(java.util.HashMap) Record(org.motechproject.mds.testutil.records.Record) Test(org.junit.Test)

Example 19 with Record

use of org.motechproject.mds.testutil.records.Record in project motech by motech.

the class MdsDataProviderTest method testMultiResultLookup.

@Test
public void testMultiResultLookup() {
    Map<String, String> lookupMap = new HashMap<>();
    lookupMap.put("field", PARAM_VALUE);
    Object result = dataProvider.lookup(Record.class.getName(), "multiLookup", lookupMap);
    // we expect it will return the record as result if there is only item
    assertNotNull(result);
    assertTrue("Wrong type returned", result instanceof Record);
    Record record = (Record) result;
    assertEquals("multi", record.getValue());
}
Also used : HashMap(java.util.HashMap) Record(org.motechproject.mds.testutil.records.Record) Test(org.junit.Test)

Example 20 with Record

use of org.motechproject.mds.testutil.records.Record in project motech by motech.

the class MdsDataProviderTest method testFindByInstanceId.

@Test
public void testFindByInstanceId() {
    Map<String, String> lookupMap = new HashMap<>();
    lookupMap.put(ID_LOOKUP_FIELD, INSTANCE_ID.toString());
    Object result = dataProvider.lookup(Record.class.getName(), FIND_BY_ID_LOOKUP, lookupMap);
    assertNotNull(result);
    assertTrue("Wrong type returned", result instanceof Record);
    Record record = (Record) result;
    assertEquals("found by id", record.getValue());
}
Also used : HashMap(java.util.HashMap) Record(org.motechproject.mds.testutil.records.Record) Test(org.junit.Test)

Aggregations

Record (org.motechproject.mds.testutil.records.Record)20 Test (org.junit.Test)16 HashMap (java.util.HashMap)4 Order (org.motechproject.mds.util.Order)4 Date (java.util.Date)3 PrepareForTest (org.powermock.core.classloader.annotations.PrepareForTest)3 ByteArrayInputStream (java.io.ByteArrayInputStream)2 InputStream (java.io.InputStream)2 Matchers.anyString (org.mockito.Matchers.anyString)2 Entity (org.motechproject.mds.domain.Entity)2 Field (org.motechproject.mds.domain.Field)2 Type (org.motechproject.mds.domain.Type)2 Record__Trash (org.motechproject.mds.testutil.records.history.Record__Trash)2 Set (java.util.Set)1 Before (org.junit.Before)1 Matchers.anyLong (org.mockito.Matchers.anyLong)1 FieldDto (org.motechproject.mds.dto.FieldDto)1 LookupDto (org.motechproject.mds.dto.LookupDto)1 TypeDto (org.motechproject.mds.dto.TypeDto)1 QueryParams (org.motechproject.mds.query.QueryParams)1