You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@olingo.apache.org by ch...@apache.org on 2013/09/01 06:32:01 UTC
git commit: [JIRA:Olingo14] Enhance JPAEdmProperty Test
Updated Branches:
refs/heads/master e9e7dadf6 -> 7bbc14ed9
[JIRA:Olingo14] Enhance JPAEdmProperty Test
Project: http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata2/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata2/commit/7bbc14ed
Tree: http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata2/tree/7bbc14ed
Diff: http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata2/diff/7bbc14ed
Branch: refs/heads/master
Commit: 7bbc14ed956341320d68a4c4e706afb86ee2b4de
Parents: e9e7dad
Author: Chandan V A <ch...@sap.com>
Authored: Sun Sep 1 10:01:24 2013 +0530
Committer: Chandan V A <ch...@sap.com>
Committed: Sun Sep 1 10:01:24 2013 +0530
----------------------------------------------------------------------
.../jpa/mock/model/JPAPluralAttributeMock.java | 1 -
.../core/jpa/model/JPAEdmPropertyTest.java | 147 +++++++++++++------
2 files changed, 99 insertions(+), 49 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata2/blob/7bbc14ed/jpa-core/src/test/java/org/apache/olingo/odata2/processor/core/jpa/mock/model/JPAPluralAttributeMock.java
----------------------------------------------------------------------
diff --git a/jpa-core/src/test/java/org/apache/olingo/odata2/processor/core/jpa/mock/model/JPAPluralAttributeMock.java b/jpa-core/src/test/java/org/apache/olingo/odata2/processor/core/jpa/mock/model/JPAPluralAttributeMock.java
index f384b5e..496936b 100644
--- a/jpa-core/src/test/java/org/apache/olingo/odata2/processor/core/jpa/mock/model/JPAPluralAttributeMock.java
+++ b/jpa-core/src/test/java/org/apache/olingo/odata2/processor/core/jpa/mock/model/JPAPluralAttributeMock.java
@@ -65,7 +65,6 @@ public class JPAPluralAttributeMock implements PluralAttribute<Object, ArrayList
@Override
public boolean isCollection() {
- // TODO Auto-generated method stub
return false;
}
http://git-wip-us.apache.org/repos/asf/incubator-olingo-odata2/blob/7bbc14ed/jpa-core/src/test/java/org/apache/olingo/odata2/processor/core/jpa/model/JPAEdmPropertyTest.java
----------------------------------------------------------------------
diff --git a/jpa-core/src/test/java/org/apache/olingo/odata2/processor/core/jpa/model/JPAEdmPropertyTest.java b/jpa-core/src/test/java/org/apache/olingo/odata2/processor/core/jpa/model/JPAEdmPropertyTest.java
index 70c40bc..e389b37 100644
--- a/jpa-core/src/test/java/org/apache/olingo/odata2/processor/core/jpa/model/JPAEdmPropertyTest.java
+++ b/jpa-core/src/test/java/org/apache/olingo/odata2/processor/core/jpa/model/JPAEdmPropertyTest.java
@@ -21,21 +21,25 @@ package org.apache.olingo.odata2.processor.core.jpa.model;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertNotNull;
-import static org.junit.Assert.assertNull;
import static org.junit.Assert.assertTrue;
import static org.junit.Assert.fail;
+import java.util.ArrayList;
import java.util.HashSet;
+import java.util.List;
import java.util.Set;
import javax.persistence.metamodel.Attribute;
+import javax.persistence.metamodel.Attribute.PersistentAttributeType;
import javax.persistence.metamodel.EmbeddableType;
import javax.persistence.metamodel.EntityType;
import javax.persistence.metamodel.Metamodel;
+import javax.persistence.metamodel.Type;
import org.apache.olingo.odata2.api.edm.FullQualifiedName;
import org.apache.olingo.odata2.api.edm.provider.Association;
import org.apache.olingo.odata2.api.edm.provider.AssociationEnd;
+import org.apache.olingo.odata2.api.edm.provider.Schema;
import org.apache.olingo.odata2.processor.api.jpa.access.JPAEdmBuilder;
import org.apache.olingo.odata2.processor.api.jpa.exception.ODataJPAModelException;
import org.apache.olingo.odata2.processor.api.jpa.exception.ODataJPARuntimeException;
@@ -50,8 +54,8 @@ import org.apache.olingo.odata2.processor.core.jpa.mock.model.JPAEdmMockData.Sim
import org.apache.olingo.odata2.processor.core.jpa.mock.model.JPAEmbeddableTypeMock;
import org.apache.olingo.odata2.processor.core.jpa.mock.model.JPAEntityTypeMock;
import org.apache.olingo.odata2.processor.core.jpa.mock.model.JPAMetaModelMock;
+import org.apache.olingo.odata2.processor.core.jpa.mock.model.JPAPluralAttributeMock;
import org.apache.olingo.odata2.processor.core.jpa.mock.model.JPASingularAttributeMock;
-import org.junit.Before;
import org.junit.Test;
public class JPAEdmPropertyTest extends JPAEdmTestModelView {
@@ -59,10 +63,10 @@ public class JPAEdmPropertyTest extends JPAEdmTestModelView {
private JPAEdmPropertyTest objJPAEdmPropertyTest;
private JPAEdmProperty objJPAEdmProperty;
- private static int ATTRIBUTE_TYPE = 1;
+ private static PersistentAttributeType ATTRIBUTE_TYPE = PersistentAttributeType.BASIC;
- @Before
public void setUp() {
+ ATTRIBUTE_TYPE = PersistentAttributeType.BASIC;
objJPAEdmPropertyTest = new JPAEdmPropertyTest();
objJPAEdmProperty = new JPAEdmProperty(objJPAEdmPropertyTest);
try {
@@ -77,22 +81,13 @@ public class JPAEdmPropertyTest extends JPAEdmTestModelView {
@Test
public void testGetBuilder() {
+ setUp();
assertNotNull(objJPAEdmProperty.getBuilder());
-
- // builder for complex type
- objJPAEdmPropertyTest = new JPAEdmPropertyTest();
- objJPAEdmProperty = new JPAEdmProperty(objJPAEdmPropertyTest, objJPAEdmPropertyTest);
- try {
- objJPAEdmProperty.getBuilder().build();
- } catch (ODataJPAModelException e) {
- fail(ODataJPATestConstants.EXCEPTION_MSG_PART_1 + e.getMessage() + ODataJPATestConstants.EXCEPTION_MSG_PART_2);
- } catch (ODataJPARuntimeException e) {
- fail(ODataJPATestConstants.EXCEPTION_MSG_PART_1 + e.getMessage() + ODataJPATestConstants.EXCEPTION_MSG_PART_2);
- }
}
@Test
public void testGetBuilderIdempotent() {
+ setUp();
JPAEdmBuilder builder1 = objJPAEdmProperty.getBuilder();
JPAEdmBuilder builder2 = objJPAEdmProperty.getBuilder();
@@ -101,60 +96,69 @@ public class JPAEdmPropertyTest extends JPAEdmTestModelView {
@Test
public void testGetPropertyList() {
+ setUp();
assertNotNull(objJPAEdmProperty.getEdmPropertyList());
assertTrue(objJPAEdmProperty.getEdmPropertyList().size() > 0);
}
@Test
public void testGetJPAEdmKeyView() {
+ setUp();
assertNotNull(objJPAEdmProperty.getJPAEdmKeyView());
}
@Test
public void testGetSimpleProperty() {
+ setUp();
assertNotNull(objJPAEdmProperty.getEdmSimpleProperty());
}
@Test
public void testGetJPAAttribute() {
+ setUp();
assertNotNull(objJPAEdmProperty.getJPAAttribute());
}
@Test
public void testGetEdmComplexProperty() {
- assertNull(objJPAEdmProperty.getEdmComplexProperty());
+
+ // builder for complex type
+ ATTRIBUTE_TYPE = PersistentAttributeType.EMBEDDED;
+ objJPAEdmPropertyTest = new JPAEdmPropertyTest();
+ objJPAEdmProperty = new JPAEdmProperty(objJPAEdmPropertyTest, objJPAEdmPropertyTest);
+ try {
+ objJPAEdmProperty.getBuilder().build();
+ } catch (ODataJPAModelException e) {
+ fail(ODataJPATestConstants.EXCEPTION_MSG_PART_1 + e.getMessage() + ODataJPATestConstants.EXCEPTION_MSG_PART_2);
+ } catch (ODataJPARuntimeException e) {
+ fail(ODataJPATestConstants.EXCEPTION_MSG_PART_1 + e.getMessage() + ODataJPATestConstants.EXCEPTION_MSG_PART_2);
+ }
+
+ assertNotNull(objJPAEdmProperty.getEdmComplexProperty());
}
@Test
public void testGetJPAEdmNavigationPropertyView() {
+ setUp();
assertNotNull(objJPAEdmProperty.getJPAEdmNavigationPropertyView());
}
@Test
public void testIsConsistent() {
+ setUp();
assertNotNull(objJPAEdmProperty.isConsistent());
}
@Test
public void testClean() {
+ setUp();
objJPAEdmProperty.clean();
assertFalse(objJPAEdmProperty.isConsistent());
}
@Test
public void testBuildManyToOne() {
- ATTRIBUTE_TYPE = 3;
- objJPAEdmPropertyTest = new JPAEdmPropertyTest();
- objJPAEdmProperty = new JPAEdmProperty(objJPAEdmPropertyTest);
- try {
- objJPAEdmProperty.getBuilder().build();
- } catch (ODataJPAModelException e) {
- fail(ODataJPATestConstants.EXCEPTION_MSG_PART_1 + e.getMessage() + ODataJPATestConstants.EXCEPTION_MSG_PART_2);
- } catch (ODataJPARuntimeException e) {
- fail(ODataJPATestConstants.EXCEPTION_MSG_PART_1 + e.getMessage() + ODataJPATestConstants.EXCEPTION_MSG_PART_2);
- }
-
- ATTRIBUTE_TYPE = 1;
+ ATTRIBUTE_TYPE = PersistentAttributeType.MANY_TO_ONE;
objJPAEdmPropertyTest = new JPAEdmPropertyTest();
objJPAEdmProperty = new JPAEdmProperty(objJPAEdmPropertyTest);
try {
@@ -165,6 +169,7 @@ public class JPAEdmPropertyTest extends JPAEdmTestModelView {
fail(ODataJPATestConstants.EXCEPTION_MSG_PART_1 + e.getMessage() + ODataJPATestConstants.EXCEPTION_MSG_PART_2);
}
+ assertNotNull(objJPAEdmProperty.getJPAEdmNavigationPropertyView().getEdmNavigationProperty());
}
@Override
@@ -173,6 +178,25 @@ public class JPAEdmPropertyTest extends JPAEdmTestModelView {
}
@Override
+ public List<String> getNonKeyComplexTypeList() {
+ return new ArrayList<String>();
+ }
+
+ @Override
+ public Schema getEdmSchema() {
+ Schema schema = new Schema();
+ schema.setNamespace(getpUnitName());
+ return schema;
+ }
+
+ @Override
+ public org.apache.olingo.odata2.api.edm.provider.ComplexType searchEdmComplexType(final String arg0) {
+ org.apache.olingo.odata2.api.edm.provider.ComplexType complexType = new org.apache.olingo.odata2.api.edm.provider.ComplexType();
+ complexType.setName("ComplexTypeA");
+ return complexType;
+ }
+
+ @Override
public JPAEdmEntitySetView getJPAEdmEntitySetView() {
return this;
}
@@ -194,9 +218,6 @@ public class JPAEdmPropertyTest extends JPAEdmTestModelView {
@Override
public org.apache.olingo.odata2.api.edm.provider.EntityType getEdmEntityType() {
- /*EntityType entityType = new EntityType();
- entityType.setName("SalesOrderHeader");
- return entityType;*/
org.apache.olingo.odata2.api.edm.provider.EntityType entityType = new org.apache.olingo.odata2.api.edm.provider.EntityType();
entityType.setName("SalesOrderHeader");
@@ -267,8 +288,16 @@ public class JPAEdmPropertyTest extends JPAEdmTestModelView {
@SuppressWarnings({ "unchecked", "rawtypes" })
private void setValuesToSet() {
- attributeSet.add((Attribute<? super String, String>) new JPAEdmAttribute(java.lang.String.class, "SOID"));
- attributeSet.add((Attribute<? super String, String>) new JPAEdmAttribute(java.lang.String.class, "SONAME"));
+ if (JPAEdmPropertyTest.ATTRIBUTE_TYPE.equals(PersistentAttributeType.BASIC)) {
+ attributeSet.add((Attribute<? super String, String>) new JPAEdmAttribute(java.lang.String.class, "SOID"));
+ attributeSet.add((Attribute<? super String, String>) new JPAEdmAttribute(java.lang.String.class, "SONAME"));
+ }
+ else if (JPAEdmPropertyTest.ATTRIBUTE_TYPE.equals(PersistentAttributeType.EMBEDDED)) {
+ attributeSet.add(new JPAEdmAttribute(JPAEdmEmbeddable.class, ComplexType.ComplexTypeA.clazz.getName()));
+ }
+ else if (JPAEdmPropertyTest.ATTRIBUTE_TYPE.equals(PersistentAttributeType.MANY_TO_ONE)) {
+ attributeSet.add(new JPAEdmPluralAttribute());
+ }
}
@Override
@@ -277,17 +306,45 @@ public class JPAEdmPropertyTest extends JPAEdmTestModelView {
return attributeSet;
}
+ private class JPAEdmPluralAttribute extends JPAPluralAttributeMock {
+ @Override
+ public java.lang.String getName() {
+ return "salesorderheaderdetails";
+ }
+
+ @Override
+ public javax.persistence.metamodel.Attribute.PersistentAttributeType getPersistentAttributeType() {
+ return ATTRIBUTE_TYPE;
+ }
+
+ @Override
+ public boolean isCollection() {
+ return true;
+ }
+
+ @Override
+ public Type<java.lang.String> getElementType() {
+ return new Type<java.lang.String>() {
+
+ @Override
+ public Class<java.lang.String> getJavaType() {
+ return java.lang.String.class;
+ }
+
+ @Override
+ public javax.persistence.metamodel.Type.PersistenceType getPersistenceType() {
+ return null;
+ }
+
+ };
+ }
+ }
+
private class JPAEdmAttribute<Object, String> extends JPASingularAttributeMock<Object, String> {
@Override
public PersistentAttributeType getPersistentAttributeType() {
- if (ATTRIBUTE_TYPE == 1) {
- return PersistentAttributeType.BASIC;
- } else if (ATTRIBUTE_TYPE == 2) {
- return PersistentAttributeType.EMBEDDED;
- } else {
- return PersistentAttributeType.MANY_TO_ONE;
- }
+ return ATTRIBUTE_TYPE;
}
Class<String> clazz;
@@ -337,7 +394,7 @@ public class JPAEdmPropertyTest extends JPAEdmTestModelView {
@Override
public Class<String> getJavaType() {
Class<?> clazz = null;
- if (ATTRIBUTE_TYPE == 1) {
+ if (ATTRIBUTE_TYPE.equals(PersistentAttributeType.BASIC)) {
clazz = (Class<java.lang.String>) SimpleType.SimpleTypeA.clazz;
} else {
clazz = (Class<?>) ComplexType.ComplexTypeA.clazz;
@@ -349,13 +406,7 @@ public class JPAEdmPropertyTest extends JPAEdmTestModelView {
@Override
public PersistentAttributeType getPersistentAttributeType() {
- if (ATTRIBUTE_TYPE == 1) {
- return PersistentAttributeType.BASIC;
- } else if (ATTRIBUTE_TYPE == 2) {
- return PersistentAttributeType.EMBEDDED;
- } else {
- return PersistentAttributeType.MANY_TO_ONE;
- }
+ return ATTRIBUTE_TYPE;
}
Class<String> clazz;