Repository: olingo-odata2 Updated Branches: refs/heads/master 10a2da0e0 -> d0b3782c9
[OLINGO-683] Dont append 'L' for numeric types other than Long Signed-off-by: Chandan V A <[email protected]> Project: http://git-wip-us.apache.org/repos/asf/olingo-odata2/repo Commit: http://git-wip-us.apache.org/repos/asf/olingo-odata2/commit/d0b3782c Tree: http://git-wip-us.apache.org/repos/asf/olingo-odata2/tree/d0b3782c Diff: http://git-wip-us.apache.org/repos/asf/olingo-odata2/diff/d0b3782c Branch: refs/heads/master Commit: d0b3782c90ca555e1957d2070c365070617c7bf6 Parents: 10a2da0 Author: Chandan V A <[email protected]> Authored: Tue Jun 9 15:16:53 2015 +0530 Committer: Chandan V A <[email protected]> Committed: Tue Jun 9 15:16:53 2015 +0530 ---------------------------------------------------------------------- .../odata2/jpa/processor/core/ODataExpressionParser.java | 2 +- .../jpa/processor/core/ODataFilterExpressionParserTest.java | 6 +++--- .../odata2/jpa/processor/core/jpql/JPQLBuilderFactoryTest.java | 5 +++-- .../odata2/jpa/processor/core/jpql/JPQLJoinContextTest.java | 5 +++-- .../processor/core/jpql/JPQLJoinSelectSingleContextTest.java | 5 +++-- .../core/jpql/JPQLSelectSingleStatementBuilderTest.java | 5 +++-- 6 files changed, 16 insertions(+), 12 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/olingo-odata2/blob/d0b3782c/odata2-jpa-processor/jpa-core/src/main/java/org/apache/olingo/odata2/jpa/processor/core/ODataExpressionParser.java ---------------------------------------------------------------------- diff --git a/odata2-jpa-processor/jpa-core/src/main/java/org/apache/olingo/odata2/jpa/processor/core/ODataExpressionParser.java b/odata2-jpa-processor/jpa-core/src/main/java/org/apache/olingo/odata2/jpa/processor/core/ODataExpressionParser.java index 830aaa8..9b64333 100644 --- a/odata2-jpa-processor/jpa-core/src/main/java/org/apache/olingo/odata2/jpa/processor/core/ODataExpressionParser.java +++ b/odata2-jpa-processor/jpa-core/src/main/java/org/apache/olingo/odata2/jpa/processor/core/ODataExpressionParser.java @@ -422,7 +422,7 @@ public class ODataExpressionParser { throw ODataJPARuntimeException.throwException(ODataJPARuntimeException.GENERAL.addContent(e.getMessage()), e); } - } else if (EdmSimpleTypeKind.Int64.getEdmSimpleTypeInstance().isCompatible(edmSimpleType)) { + } else if (edmSimpleType.getDefaultType().equals(Long.class)) { uriLiteral = uriLiteral + JPQLStatement.DELIMITER.LONG; //$NON-NLS-1$ } return uriLiteral; http://git-wip-us.apache.org/repos/asf/olingo-odata2/blob/d0b3782c/odata2-jpa-processor/jpa-core/src/test/java/org/apache/olingo/odata2/jpa/processor/core/ODataFilterExpressionParserTest.java ---------------------------------------------------------------------- diff --git a/odata2-jpa-processor/jpa-core/src/test/java/org/apache/olingo/odata2/jpa/processor/core/ODataFilterExpressionParserTest.java b/odata2-jpa-processor/jpa-core/src/test/java/org/apache/olingo/odata2/jpa/processor/core/ODataFilterExpressionParserTest.java index 33419d5..8d1d38e 100644 --- a/odata2-jpa-processor/jpa-core/src/test/java/org/apache/olingo/odata2/jpa/processor/core/ODataFilterExpressionParserTest.java +++ b/odata2-jpa-processor/jpa-core/src/test/java/org/apache/olingo/odata2/jpa/processor/core/ODataFilterExpressionParserTest.java @@ -65,13 +65,13 @@ public class ODataFilterExpressionParserTest { "(E1.oValue.Currency NOT LIKE CONCAT('%',LOWER('INR')) )" }; private static final String[] EXPRESSION_NESTED_METHOD = { "endswith(substring(oValue/Currency,2),'INR') eq false", - "(SUBSTRING(E1.oValue.Currency, 2L + 1 ) NOT LIKE CONCAT('%','INR') )" }; + "(SUBSTRING(E1.oValue.Currency, 2 + 1 ) NOT LIKE CONCAT('%','INR') )" }; private static final String[] EXPRESSION_SUBSTRING_OF = { "substringof(id,'123') ne true", "((CASE WHEN ('123' LIKE CONCAT('%',E1.id,'%')) THEN TRUE ELSE FALSE END) <> true)" }; private static final String[] EXPRESSION_STARTS_WITH_WRONG_OP = { "startswith(oValue/Currency,'INR') lt true", "" }; private static final String[] EXPRESSION_SUBSTRING_ALL_OP = { "substring(oValue/Currency,1,3) eq 'INR'", - "(SUBSTRING(E1.oValue.Currency, 1L + 1 , 3L) = 'INR')" }; + "(SUBSTRING(E1.oValue.Currency, 1 + 1 , 3) = 'INR')" }; private static final String[] EXPRESSION_SUBSTRINGOF_INJECTION1 = { "substringof('a'' OR 1=1 OR E1.id LIKE ''b',id) eq true", "((CASE WHEN (E1.id LIKE CONCAT('%','a'' OR 1=1 OR E1.id LIKE ''b','%')) THEN TRUE ELSE FALSE END) = true)" }; @@ -83,7 +83,7 @@ public class ODataFilterExpressionParserTest { private static final String[] EXPRESSION_SUBSTRINGOF_INJECTION3 = { "substringof( substring(' ) OR execute_my_sql OR '' LIKE ',3),'de''') eq true", - "((CASE WHEN ('de''' LIKE CONCAT('%',SUBSTRING(' ) OR execute_my_sql OR '' LIKE ', 3L + 1 ),'%')) " + "((CASE WHEN ('de''' LIKE CONCAT('%',SUBSTRING(' ) OR execute_my_sql OR '' LIKE ', 3 + 1 ),'%')) " + "THEN TRUE ELSE FALSE END) = true)" }; private static final String[] EXPRESSION_ENDSWITH_INJECTION1 = { "endswith(id,'Str''eet') eq true", "(E1.id LIKE CONCAT('%','Str''eet') )" }; http://git-wip-us.apache.org/repos/asf/olingo-odata2/blob/d0b3782c/odata2-jpa-processor/jpa-core/src/test/java/org/apache/olingo/odata2/jpa/processor/core/jpql/JPQLBuilderFactoryTest.java ---------------------------------------------------------------------- diff --git a/odata2-jpa-processor/jpa-core/src/test/java/org/apache/olingo/odata2/jpa/processor/core/jpql/JPQLBuilderFactoryTest.java b/odata2-jpa-processor/jpa-core/src/test/java/org/apache/olingo/odata2/jpa/processor/core/jpql/JPQLBuilderFactoryTest.java index dd56f91..58082b9 100644 --- a/odata2-jpa-processor/jpa-core/src/test/java/org/apache/olingo/odata2/jpa/processor/core/jpql/JPQLBuilderFactoryTest.java +++ b/odata2-jpa-processor/jpa-core/src/test/java/org/apache/olingo/odata2/jpa/processor/core/jpql/JPQLBuilderFactoryTest.java @@ -42,6 +42,7 @@ import org.apache.olingo.odata2.api.edm.EdmException; import org.apache.olingo.odata2.api.edm.EdmMapping; import org.apache.olingo.odata2.api.edm.EdmProperty; import org.apache.olingo.odata2.api.edm.EdmSimpleType; +import org.apache.olingo.odata2.api.edm.EdmSimpleTypeKind; import org.apache.olingo.odata2.api.exception.ODataException; import org.apache.olingo.odata2.api.uri.KeyPredicate; import org.apache.olingo.odata2.api.uri.NavigationSegment; @@ -179,7 +180,7 @@ public class JPQLBuilderFactoryTest { EasyMock.expect(getEntitySetView.getNavigationSegments()).andStubReturn(navigationSegments); KeyPredicate keyPredicate = EasyMock.createMock(KeyPredicate.class); EdmProperty kpProperty = EasyMock.createMock(EdmProperty.class); - EdmSimpleType edmType = EasyMock.createMock(EdmSimpleType.class); + EdmSimpleType edmType = EdmSimpleTypeKind.Int32.getEdmSimpleTypeInstance(); EdmMapping edmMapping = EasyMock.createMock(EdmMapping.class); EasyMock.expect(edmMapping.getInternalName()).andStubReturn("Field1"); EasyMock.expect(keyPredicate.getLiteral()).andStubReturn("1"); @@ -193,7 +194,7 @@ public class JPQLBuilderFactoryTest { fail("this should not happen"); } EasyMock.expect(keyPredicate.getProperty()).andStubReturn(kpProperty); - EasyMock.replay(edmMapping, edmType, kpProperty, keyPredicate); + EasyMock.replay(edmMapping, kpProperty, keyPredicate); List<KeyPredicate> keyPredicates = new ArrayList<KeyPredicate>(); keyPredicates.add(keyPredicate); EasyMock.expect(getEntitySetView.getKeyPredicates()).andStubReturn(keyPredicates); http://git-wip-us.apache.org/repos/asf/olingo-odata2/blob/d0b3782c/odata2-jpa-processor/jpa-core/src/test/java/org/apache/olingo/odata2/jpa/processor/core/jpql/JPQLJoinContextTest.java ---------------------------------------------------------------------- diff --git a/odata2-jpa-processor/jpa-core/src/test/java/org/apache/olingo/odata2/jpa/processor/core/jpql/JPQLJoinContextTest.java b/odata2-jpa-processor/jpa-core/src/test/java/org/apache/olingo/odata2/jpa/processor/core/jpql/JPQLJoinContextTest.java index 293b0af..3c595ae 100644 --- a/odata2-jpa-processor/jpa-core/src/test/java/org/apache/olingo/odata2/jpa/processor/core/jpql/JPQLJoinContextTest.java +++ b/odata2-jpa-processor/jpa-core/src/test/java/org/apache/olingo/odata2/jpa/processor/core/jpql/JPQLJoinContextTest.java @@ -36,6 +36,7 @@ import org.apache.olingo.odata2.api.edm.EdmMultiplicity; import org.apache.olingo.odata2.api.edm.EdmNavigationProperty; import org.apache.olingo.odata2.api.edm.EdmProperty; import org.apache.olingo.odata2.api.edm.EdmSimpleType; +import org.apache.olingo.odata2.api.edm.EdmSimpleTypeKind; import org.apache.olingo.odata2.api.uri.KeyPredicate; import org.apache.olingo.odata2.api.uri.NavigationSegment; import org.apache.olingo.odata2.api.uri.info.GetEntitySetUriInfo; @@ -185,11 +186,11 @@ public class JPQLJoinContextTest { EasyMock.expect(edmMapping.getInternalName()).andStubReturn("soid"); EasyMock.expect(edmProperty.getMapping()).andStubReturn(edmMapping); EasyMock.expect(edmProperty.getName()).andStubReturn("soid"); - EdmSimpleType edmType = EasyMock.createMock(EdmSimpleType.class); + EdmSimpleType edmType = EdmSimpleTypeKind.Int32.getEdmSimpleTypeInstance(); EasyMock.expect(edmProperty.getType()).andStubReturn(edmType); EasyMock.expect(keyPredicate.getProperty()).andStubReturn(edmProperty); - EasyMock.replay(edmType, edmMapping, edmProperty, keyPredicate); + EasyMock.replay(edmMapping, edmProperty, keyPredicate); List<KeyPredicate> keyPredicates = new ArrayList<KeyPredicate>(); keyPredicates.add(keyPredicate); return keyPredicates; http://git-wip-us.apache.org/repos/asf/olingo-odata2/blob/d0b3782c/odata2-jpa-processor/jpa-core/src/test/java/org/apache/olingo/odata2/jpa/processor/core/jpql/JPQLJoinSelectSingleContextTest.java ---------------------------------------------------------------------- diff --git a/odata2-jpa-processor/jpa-core/src/test/java/org/apache/olingo/odata2/jpa/processor/core/jpql/JPQLJoinSelectSingleContextTest.java b/odata2-jpa-processor/jpa-core/src/test/java/org/apache/olingo/odata2/jpa/processor/core/jpql/JPQLJoinSelectSingleContextTest.java index 73b93c4..f16217c 100644 --- a/odata2-jpa-processor/jpa-core/src/test/java/org/apache/olingo/odata2/jpa/processor/core/jpql/JPQLJoinSelectSingleContextTest.java +++ b/odata2-jpa-processor/jpa-core/src/test/java/org/apache/olingo/odata2/jpa/processor/core/jpql/JPQLJoinSelectSingleContextTest.java @@ -36,6 +36,7 @@ import org.apache.olingo.odata2.api.edm.EdmMultiplicity; import org.apache.olingo.odata2.api.edm.EdmNavigationProperty; import org.apache.olingo.odata2.api.edm.EdmProperty; import org.apache.olingo.odata2.api.edm.EdmSimpleType; +import org.apache.olingo.odata2.api.edm.EdmSimpleTypeKind; import org.apache.olingo.odata2.api.uri.KeyPredicate; import org.apache.olingo.odata2.api.uri.NavigationSegment; import org.apache.olingo.odata2.api.uri.info.GetEntityUriInfo; @@ -198,7 +199,7 @@ public class JPQLJoinSelectSingleContextTest { EasyMock.expect(edmMapping.getInternalName()).andStubReturn("soid"); EasyMock.expect(edmProperty.getMapping()).andStubReturn(edmMapping); EasyMock.expect(edmProperty.getName()).andStubReturn("soid"); - EdmSimpleType edmType = EasyMock.createMock(EdmSimpleType.class); + EdmSimpleType edmType = EdmSimpleTypeKind.Int32.getEdmSimpleTypeInstance(); if (toThrowException) { EasyMock.expect(edmProperty.getType()).andStubThrow(new EdmException(null)); } else { @@ -206,7 +207,7 @@ public class JPQLJoinSelectSingleContextTest { } EasyMock.expect(keyPredicate.getProperty()).andStubReturn(edmProperty); - EasyMock.replay(edmType, edmMapping, edmProperty, keyPredicate); + EasyMock.replay(edmMapping, edmProperty, keyPredicate); List<KeyPredicate> keyPredicates = new ArrayList<KeyPredicate>(); keyPredicates.add(keyPredicate); return keyPredicates; http://git-wip-us.apache.org/repos/asf/olingo-odata2/blob/d0b3782c/odata2-jpa-processor/jpa-core/src/test/java/org/apache/olingo/odata2/jpa/processor/core/jpql/JPQLSelectSingleStatementBuilderTest.java ---------------------------------------------------------------------- diff --git a/odata2-jpa-processor/jpa-core/src/test/java/org/apache/olingo/odata2/jpa/processor/core/jpql/JPQLSelectSingleStatementBuilderTest.java b/odata2-jpa-processor/jpa-core/src/test/java/org/apache/olingo/odata2/jpa/processor/core/jpql/JPQLSelectSingleStatementBuilderTest.java index 58cddc7..9d47839 100644 --- a/odata2-jpa-processor/jpa-core/src/test/java/org/apache/olingo/odata2/jpa/processor/core/jpql/JPQLSelectSingleStatementBuilderTest.java +++ b/odata2-jpa-processor/jpa-core/src/test/java/org/apache/olingo/odata2/jpa/processor/core/jpql/JPQLSelectSingleStatementBuilderTest.java @@ -30,6 +30,7 @@ import org.apache.olingo.odata2.api.edm.EdmException; import org.apache.olingo.odata2.api.edm.EdmMapping; import org.apache.olingo.odata2.api.edm.EdmProperty; import org.apache.olingo.odata2.api.edm.EdmSimpleType; +import org.apache.olingo.odata2.api.edm.EdmSimpleTypeKind; import org.apache.olingo.odata2.api.uri.KeyPredicate; import org.apache.olingo.odata2.api.uri.SelectItem; import org.apache.olingo.odata2.api.uri.info.GetEntityUriInfo; @@ -67,7 +68,7 @@ public class JPQLSelectSingleStatementBuilderTest { // Setting up the expected value KeyPredicate keyPredicate = EasyMock.createMock(KeyPredicate.class); EdmProperty kpProperty = EasyMock.createMock(EdmProperty.class); - EdmSimpleType edmType = EasyMock.createMock(EdmSimpleType.class); + EdmSimpleType edmType = EdmSimpleTypeKind.Int32.getEdmSimpleTypeInstance(); EdmMapping edmMapping = EasyMock.createMock(EdmMapping.class); EasyMock.expect(edmMapping.getInternalName()).andStubReturn("Field1"); EasyMock.expect(keyPredicate.getLiteral()).andStubReturn("1"); @@ -81,7 +82,7 @@ public class JPQLSelectSingleStatementBuilderTest { fail("this should not happen"); } EasyMock.expect(keyPredicate.getProperty()).andStubReturn(kpProperty); - EasyMock.replay(edmMapping, edmType, kpProperty, keyPredicate); + EasyMock.replay(edmMapping, kpProperty, keyPredicate); EasyMock.expect(getEntityView.getTargetEntitySet()).andStubReturn(edmEntitySet); EasyMock.expect(getEntityView.getSelect()).andStubReturn(selectItemList);
