[OLINGO-260] key as segment
Project: http://git-wip-us.apache.org/repos/asf/olingo-odata4/repo Commit: http://git-wip-us.apache.org/repos/asf/olingo-odata4/commit/90e578ca Tree: http://git-wip-us.apache.org/repos/asf/olingo-odata4/tree/90e578ca Diff: http://git-wip-us.apache.org/repos/asf/olingo-odata4/diff/90e578ca Branch: refs/heads/master Commit: 90e578ca58deeae0e30ad796c5fe90d5c492dc27 Parents: a1050e1 Author: Francesco Chicchiriccò <--global> Authored: Wed May 14 17:49:50 2014 +0200 Committer: Stephan Klevenz <[email protected]> Committed: Mon May 19 14:34:28 2014 +0200 ---------------------------------------------------------------------- fit/src/it/actionOverloadingV3/pom.xml | 2 +- fit/src/it/primitiveKeysServiceV3/pom.xml | 2 +- .../olingo/fit/proxy/v4/AbstractTestITCase.java | 47 +++++++++++++++++++- .../fit/proxy/v4/EntityCreateTestITCase.java | 40 +---------------- .../fit/proxy/v4/EntityRetrieveTestITCase.java | 39 +++++----------- .../fit/proxy/v4/KeyAsSegmentTestITCase.java | 8 ++-- .../olingo/fit/proxy/v4/PropertyTestITCase.java | 8 ++-- 7 files changed, 69 insertions(+), 77 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/90e578ca/fit/src/it/actionOverloadingV3/pom.xml ---------------------------------------------------------------------- diff --git a/fit/src/it/actionOverloadingV3/pom.xml b/fit/src/it/actionOverloadingV3/pom.xml index f5cc684..b978872 100644 --- a/fit/src/it/actionOverloadingV3/pom.xml +++ b/fit/src/it/actionOverloadingV3/pom.xml @@ -27,7 +27,7 @@ <groupId>org.apache.olingo</groupId> <version>@project.version@</version> <name>${project.artifactId}</name> - <description>A simple IT verifying the basic use case of pojogen-man-plugin.</description> + <description>A simple IT verifying the basic use case of pojogen-maven-plugin.</description> <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/90e578ca/fit/src/it/primitiveKeysServiceV3/pom.xml ---------------------------------------------------------------------- diff --git a/fit/src/it/primitiveKeysServiceV3/pom.xml b/fit/src/it/primitiveKeysServiceV3/pom.xml index a01701f..6a8efd0 100644 --- a/fit/src/it/primitiveKeysServiceV3/pom.xml +++ b/fit/src/it/primitiveKeysServiceV3/pom.xml @@ -27,7 +27,7 @@ <groupId>org.apache.olingo</groupId> <version>@project.version@</version> <name>${project.artifactId}</name> - <description>A simple IT verifying the basic use case of pojogen-man-plugin.</description> + <description>A simple IT verifying the basic use case of pojogen-maven-plugin.</description> <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/90e578ca/fit/src/test/java/org/apache/olingo/fit/proxy/v4/AbstractTestITCase.java ---------------------------------------------------------------------- diff --git a/fit/src/test/java/org/apache/olingo/fit/proxy/v4/AbstractTestITCase.java b/fit/src/test/java/org/apache/olingo/fit/proxy/v4/AbstractTestITCase.java index cdf503f..fd4da32 100644 --- a/fit/src/test/java/org/apache/olingo/fit/proxy/v4/AbstractTestITCase.java +++ b/fit/src/test/java/org/apache/olingo/fit/proxy/v4/AbstractTestITCase.java @@ -18,15 +18,21 @@ */ package org.apache.olingo.fit.proxy.v4; -import static org.junit.Assert.assertNotNull; import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertNotNull; +import static org.junit.Assert.assertNull; import java.io.IOException; +import java.math.BigDecimal; +import java.util.Arrays; +import java.util.Calendar; +import java.util.TimeZone; import org.apache.olingo.commons.api.format.ContentType; import org.apache.olingo.ext.proxy.EntityContainerFactory; import org.apache.olingo.ext.proxy.context.EntityContext; import org.apache.olingo.fit.proxy.v4.staticservice.microsoft.test.odata.services.odatawcfservice.InMemoryEntities; import org.apache.olingo.fit.proxy.v4.staticservice.microsoft.test.odata.services.odatawcfservice.types.Customer; +import org.apache.olingo.fit.proxy.v4.staticservice.microsoft.test.odata.services.odatawcfservice.types.Order; import org.junit.BeforeClass; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -80,4 +86,43 @@ public abstract class AbstractTestITCase { return customer; } + + protected void createAndDeleteOrder(final InMemoryEntities container) { + final Order order = container.getOrders().newOrder(); + order.setOrderID(105); + + final Calendar orderDate = Calendar.getInstance(TimeZone.getTimeZone("GMT")); + orderDate.clear(); + orderDate.set(2011, 3, 4, 16, 3, 57); + order.setOrderDate(orderDate); + + order.setShelfLife(BigDecimal.TEN); + order.setOrderShelfLifes(Arrays.asList(new BigDecimal[] {BigDecimal.TEN.negate(), BigDecimal.TEN})); + + container.flush(); + + Order actual = container.getOrders().get(105); + assertEquals(105, actual.getOrderID(), 0); + assertEquals(orderDate.getTimeInMillis(), actual.getOrderDate().getTimeInMillis()); + assertEquals(BigDecimal.TEN, actual.getShelfLife()); + assertEquals(2, actual.getOrderShelfLifes().size()); + + container.getOrders().delete(105); + actual = container.getOrders().get(105); + assertNull(actual); + + entityContext.detachAll(); + actual = container.getOrders().get(105); + assertNotNull(actual); + + container.getOrders().delete(105); + actual = container.getOrders().get(105); + assertNull(actual); + + container.flush(); + + entityContext.detachAll(); + actual = container.getOrders().get(105); + assertNull(actual); + } } http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/90e578ca/fit/src/test/java/org/apache/olingo/fit/proxy/v4/EntityCreateTestITCase.java ---------------------------------------------------------------------- diff --git a/fit/src/test/java/org/apache/olingo/fit/proxy/v4/EntityCreateTestITCase.java b/fit/src/test/java/org/apache/olingo/fit/proxy/v4/EntityCreateTestITCase.java index 034ca45..6d6c899 100644 --- a/fit/src/test/java/org/apache/olingo/fit/proxy/v4/EntityCreateTestITCase.java +++ b/fit/src/test/java/org/apache/olingo/fit/proxy/v4/EntityCreateTestITCase.java @@ -43,43 +43,8 @@ import org.junit.Test; public class EntityCreateTestITCase extends AbstractTestITCase { @Test - public void create() { - final Order order = container.getOrders().newOrder(); - order.setOrderID(105); - - final Calendar orderDate = Calendar.getInstance(TimeZone.getTimeZone("GMT")); - orderDate.clear(); - orderDate.set(2011, 3, 4, 16, 3, 57); - order.setOrderDate(orderDate); - - order.setShelfLife(BigDecimal.TEN); - order.setOrderShelfLifes(Arrays.asList(new BigDecimal[] {BigDecimal.TEN.negate(), BigDecimal.TEN})); - - container.flush(); - - Order actual = container.getOrders().get(105); - assertEquals(105, actual.getOrderID(), 0); - assertEquals(orderDate.getTimeInMillis(), actual.getOrderDate().getTimeInMillis()); - assertEquals(BigDecimal.TEN, actual.getShelfLife()); - assertEquals(2, actual.getOrderShelfLifes().size()); - - container.getOrders().delete(105); - actual = container.getOrders().get(105); - assertNull(actual); - - entityContext.detachAll(); - actual = container.getOrders().get(105); - assertNotNull(actual); - - container.getOrders().delete(105); - actual = container.getOrders().get(105); - assertNull(actual); - - container.flush(); - - entityContext.detachAll(); - actual = container.getOrders().get(105); - assertNull(actual); + public void createAndDelete() { + createAndDeleteOrder(container); } @Test @@ -181,7 +146,6 @@ public class EntityCreateTestITCase extends AbstractTestITCase { order.setOrderShelfLifes(Arrays.asList(new BigDecimal[] {BigDecimal.TEN.negate(), BigDecimal.TEN})); // ------------------------------- - // ------------------------------- // Create a new customer // ------------------------------- http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/90e578ca/fit/src/test/java/org/apache/olingo/fit/proxy/v4/EntityRetrieveTestITCase.java ---------------------------------------------------------------------- diff --git a/fit/src/test/java/org/apache/olingo/fit/proxy/v4/EntityRetrieveTestITCase.java b/fit/src/test/java/org/apache/olingo/fit/proxy/v4/EntityRetrieveTestITCase.java index 7d79a60..efad794 100644 --- a/fit/src/test/java/org/apache/olingo/fit/proxy/v4/EntityRetrieveTestITCase.java +++ b/fit/src/test/java/org/apache/olingo/fit/proxy/v4/EntityRetrieveTestITCase.java @@ -28,8 +28,7 @@ import java.lang.reflect.Proxy; import java.util.Calendar; import java.util.TimeZone; import org.apache.commons.lang3.StringUtils; -import org.apache.olingo.ext.proxy.commons.EntityInvocationHandler; -import org.apache.olingo.fit.proxy.v4.staticservice.microsoft.test.odata.services.odatawcfservice.InMemoryEntities; +import org.apache.olingo.ext.proxy.commons.EntityTypeInvocationHandler; import org.apache.olingo.fit.proxy.v4.staticservice.microsoft.test.odata.services.odatawcfservice.types.AccessLevel; import org.apache.olingo.fit.proxy.v4.staticservice.microsoft.test.odata.services.odatawcfservice.types.Address; import org.apache.olingo.fit.proxy.v4.staticservice.microsoft.test.odata.services.odatawcfservice.types.Company; @@ -43,8 +42,6 @@ import org.apache.olingo.fit.proxy.v4.staticservice.microsoft.test.odata.service import org.apache.olingo.fit.proxy.v4.staticservice.microsoft.test.odata.services.odatawcfservice.types.OrderCollection; import org.apache.olingo.fit.proxy.v4.staticservice.microsoft.test.odata.services.odatawcfservice.types.OrderDetail; import org.apache.olingo.fit.proxy.v4.staticservice.microsoft.test.odata.services.odatawcfservice.types.OrderDetailKey; -import org.apache.olingo.fit.proxy.v4.staticservice.microsoft.test.odata.services.odatawcfservice.types. - PaymentInstrument; import org.apache.olingo.fit.proxy.v4.staticservice.microsoft.test.odata.services.odatawcfservice.types.Person; import org.apache.olingo.fit.proxy.v4.staticservice.microsoft.test.odata.services.odatawcfservice.types. PersonCollection; @@ -56,14 +53,10 @@ import org.junit.Test; */ public class EntityRetrieveTestITCase extends AbstractTestITCase { - protected InMemoryEntities getContainer() { - return container; - } - @Test public void exists() { - assertTrue(getContainer().getCustomers().exists(1)); - assertFalse(getContainer().getOrders().exists(1)); + assertTrue(container.getCustomers().exists(1)); + assertFalse(container.getOrders().exists(1)); } @Test @@ -73,21 +66,21 @@ public class EntityRetrieveTestITCase extends AbstractTestITCase { @Test public void getAll() { - final PersonCollection all = getContainer().getPeople().getAll(); + final PersonCollection all = container.getPeople().getAll(); assertNotNull(all); assertFalse(all.isEmpty()); for (Person person : all) { assertNotNull(person); } - final EmployeeCollection employees = getContainer().getPeople().getAll(EmployeeCollection.class); + final EmployeeCollection employees = container.getPeople().getAll(EmployeeCollection.class); assertNotNull(employees); assertFalse(employees.isEmpty()); for (Employee employee : employees) { assertNotNull(employee); } - final CustomerCollection customers = getContainer().getPeople().getAll(CustomerCollection.class); + final CustomerCollection customers = container.getPeople().getAll(CustomerCollection.class); assertNotNull(customers); assertFalse(customers.isEmpty()); for (Customer customer : customers) { @@ -99,7 +92,7 @@ public class EntityRetrieveTestITCase extends AbstractTestITCase { @Test public void navigate() { - final Order order = getContainer().getOrders().get(8); + final Order order = container.getOrders().get(8); assertNotNull(order); assertEquals(8, order.getOrderID(), 0); @@ -110,7 +103,7 @@ public class EntityRetrieveTestITCase extends AbstractTestITCase { actual.set(2011, 2, 4, 16, 3, 57); assertEquals(actual.getTimeInMillis(), date.getTimeInMillis()); - final Customer customer = getContainer().getCustomers().get(1); + final Customer customer = container.getCustomers().get(1); assertNotNull(customer); assertEquals(1, customer.getPersonID(), 0); final Address address = customer.getHomeAddress(); @@ -135,7 +128,7 @@ public class EntityRetrieveTestITCase extends AbstractTestITCase { @Test public void withActions() { - final Product product = getContainer().getProducts().get(5); + final Product product = container.getProducts().get(5); assertEquals(5, product.getProductID(), 0); try { @@ -151,7 +144,7 @@ public class EntityRetrieveTestITCase extends AbstractTestITCase { orderDetailKey.setOrderID(7); orderDetailKey.setProductID(5); - final OrderDetail orderDetail = getContainer().getOrderDetails().get(orderDetailKey); + final OrderDetail orderDetail = container.getOrderDetails().get(orderDetailKey); assertNotNull(orderDetail); assertEquals(7, orderDetail.getOrderID(), 0); assertEquals(5, orderDetail.getProductID(), 0); @@ -159,15 +152,7 @@ public class EntityRetrieveTestITCase extends AbstractTestITCase { @Test public void checkForETag() { - final Order order = getContainer().getOrders().get(8); - assertTrue(StringUtils.isNotBlank(((EntityInvocationHandler) Proxy.getInvocationHandler(order)).getETag())); - } - - @Test - public void contained() { - final PaymentInstrument instrument = container.getAccounts().get(101).getMyPaymentInstruments().get(101901); - assertNotNull(instrument); - assertEquals(101901, instrument.getPaymentInstrumentID(), 0); - assertNotNull(instrument.getCreatedDate()); + final Order order = container.getOrders().get(8); + assertTrue(StringUtils.isNotBlank(((EntityTypeInvocationHandler) Proxy.getInvocationHandler(order)).getETag())); } } http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/90e578ca/fit/src/test/java/org/apache/olingo/fit/proxy/v4/KeyAsSegmentTestITCase.java ---------------------------------------------------------------------- diff --git a/fit/src/test/java/org/apache/olingo/fit/proxy/v4/KeyAsSegmentTestITCase.java b/fit/src/test/java/org/apache/olingo/fit/proxy/v4/KeyAsSegmentTestITCase.java index a992133..817d271 100644 --- a/fit/src/test/java/org/apache/olingo/fit/proxy/v4/KeyAsSegmentTestITCase.java +++ b/fit/src/test/java/org/apache/olingo/fit/proxy/v4/KeyAsSegmentTestITCase.java @@ -21,7 +21,6 @@ package org.apache.olingo.fit.proxy.v4; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertNotNull; -import org.apache.olingo.client.api.v4.EdmEnabledODataClient; import org.apache.olingo.commons.api.format.ContentType; import org.apache.olingo.ext.proxy.EntityContainerFactory; import org.apache.olingo.fit.proxy.v4.staticservice.microsoft.test.odata.services.odatawcfservice.InMemoryEntities; @@ -31,10 +30,9 @@ import org.junit.Test; public class KeyAsSegmentTestITCase extends AbstractTestITCase { private InMemoryEntities getContainer() { - final EntityContainerFactory<EdmEnabledODataClient> ecf = - EntityContainerFactory.getV4(testKeyAsSegmentServiceRootURL); - ecf.getClient().getConfiguration().setKeyAsSegment(true); - ecf.getClient().getConfiguration().setDefaultBatchAcceptFormat(ContentType.APPLICATION_OCTET_STREAM); + final EntityContainerFactory ecf = EntityContainerFactory.getV3(testKeyAsSegmentServiceRootURL); + ecf.getConfiguration().setKeyAsSegment(true); + ecf.getConfiguration().setDefaultBatchAcceptFormat(ContentType.APPLICATION_OCTET_STREAM); return ecf.getEntityContainer(InMemoryEntities.class); } http://git-wip-us.apache.org/repos/asf/olingo-odata4/blob/90e578ca/fit/src/test/java/org/apache/olingo/fit/proxy/v4/PropertyTestITCase.java ---------------------------------------------------------------------- diff --git a/fit/src/test/java/org/apache/olingo/fit/proxy/v4/PropertyTestITCase.java b/fit/src/test/java/org/apache/olingo/fit/proxy/v4/PropertyTestITCase.java index e8f7158..7c7fde7 100644 --- a/fit/src/test/java/org/apache/olingo/fit/proxy/v4/PropertyTestITCase.java +++ b/fit/src/test/java/org/apache/olingo/fit/proxy/v4/PropertyTestITCase.java @@ -18,12 +18,12 @@ */ package org.apache.olingo.fit.proxy.v4; -import org.apache.olingo.ext.proxy.EntityContainerFactory; -import org.apache.olingo.fit.proxy.v4.staticservice.microsoft.test.odata.services.odatawcfservice.types.Customer; -import org.apache.olingo.fit.proxy.v4.staticservice.microsoft.test.odata.services.odatawcfservice.types.StoredPI; import static org.junit.Assert.assertNull; import static org.junit.Assert.fail; +import org.apache.olingo.ext.proxy.EntityContainerFactory; +import org.apache.olingo.fit.proxy.v4.staticservice.microsoft.test.odata.services.odatawcfservice.types.Customer; +import org.apache.olingo.fit.proxy.v4.staticservice.microsoft.test.odata.services.odatawcfservice.types.StoredPI; import org.junit.Test; /** @@ -33,7 +33,7 @@ public class PropertyTestITCase extends AbstractTestITCase { @Test public void nullNullableProperty() { - Customer customer = container.getCustomers().get(1); + final Customer customer = container.getCustomers().get(1); customer.setFirstName(null); container.flush();
