package org.springframework.data.simpledb.core; import com.amazonaws.services.simpledb.model.Attribute; import com.amazonaws.services.simpledb.model.Item; import org.junit.Test; import org.springframework.data.simpledb.core.domain.SimpleDbSampleEntity; import org.springframework.data.simpledb.repository.support.entityinformation.SimpleDbEntityInformation; import java.util.ArrayList; import java.util.List; import static org.junit.Assert.*; public class DomainItemBuilderTest { public static final String SAMPLE_ITEM_NAME = "SAMPLE_ITEM_NAME"; private static final Boolean SAMPLE_BOOLEAN_ATT_VALUE = Boolean.TRUE; private DomainItemBuilder<SimpleDbSampleEntity> domainItemBuilder; @Test public void populateDomainItem_should_convert_item_name() { Item sampleItem = new Item(SAMPLE_ITEM_NAME, new ArrayList<Attribute>()); SimpleDbEntityInformation<SimpleDbSampleEntity, String> entityInformation = SimpleDbSampleEntity .entityInformation(); domainItemBuilder = new DomainItemBuilder<SimpleDbSampleEntity>(); SimpleDbSampleEntity returnedDomainEntity = domainItemBuilder.populateDomainItem(entityInformation, sampleItem); assertEquals(SAMPLE_ITEM_NAME, returnedDomainEntity.getItemName()); } @Test public void populateDomainItem_should_convert_attributes() { List<Attribute> attributeList = new ArrayList<Attribute>(); attributeList.add(new Attribute("booleanField", "" + SAMPLE_BOOLEAN_ATT_VALUE)); Item sampleItem = new Item(SAMPLE_ITEM_NAME, attributeList); SimpleDbEntityInformation<SimpleDbSampleEntity, String> entityInformation = SimpleDbSampleEntity .entityInformation(); domainItemBuilder = new DomainItemBuilder<SimpleDbSampleEntity>(); SimpleDbSampleEntity returnedDomainEntity = domainItemBuilder.populateDomainItem(entityInformation, sampleItem); assertTrue(returnedDomainEntity.getBooleanField() == SAMPLE_BOOLEAN_ATT_VALUE); } }