You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@sling.apache.org by ss...@apache.org on 2016/12/19 11:53:57 UTC

svn commit: r1775068 - /sling/trunk/testing/mocks/resourceresolver-mock/src/test/java/org/apache/sling/testing/resourceresolver/SlingCrudResourceResolverTest.java

Author: sseifert
Date: Mon Dec 19 11:53:57 2016
New Revision: 1775068

URL: http://svn.apache.org/viewvc?rev=1775068&view=rev
Log:
SLING-6416 prepare unit tests for BigDecimal conversion test

Modified:
    sling/trunk/testing/mocks/resourceresolver-mock/src/test/java/org/apache/sling/testing/resourceresolver/SlingCrudResourceResolverTest.java

Modified: sling/trunk/testing/mocks/resourceresolver-mock/src/test/java/org/apache/sling/testing/resourceresolver/SlingCrudResourceResolverTest.java
URL: http://svn.apache.org/viewvc/sling/trunk/testing/mocks/resourceresolver-mock/src/test/java/org/apache/sling/testing/resourceresolver/SlingCrudResourceResolverTest.java?rev=1775068&r1=1775067&r2=1775068&view=diff
==============================================================================
--- sling/trunk/testing/mocks/resourceresolver-mock/src/test/java/org/apache/sling/testing/resourceresolver/SlingCrudResourceResolverTest.java (original)
+++ sling/trunk/testing/mocks/resourceresolver-mock/src/test/java/org/apache/sling/testing/resourceresolver/SlingCrudResourceResolverTest.java Mon Dec 19 11:53:57 2016
@@ -28,6 +28,7 @@ import static org.junit.Assert.assertTru
 import java.io.ByteArrayInputStream;
 import java.io.IOException;
 import java.io.InputStream;
+import java.math.BigDecimal;
 import java.util.Calendar;
 import java.util.Date;
 import java.util.List;
@@ -42,6 +43,7 @@ import org.apache.sling.api.resource.Res
 import org.apache.sling.api.resource.ResourceUtil;
 import org.apache.sling.api.resource.ValueMap;
 import org.junit.Before;
+import org.junit.Ignore;
 import org.junit.Test;
 
 import com.google.common.collect.ImmutableMap;
@@ -56,7 +58,9 @@ public class SlingCrudResourceResolverTe
     private static final String STRING_VALUE = "value1";
     private static final String[] STRING_ARRAY_VALUE = new String[] { "value1", "value2" };
     private static final int INTEGER_VALUE = 25;
+    private static final long LONG_VALUE = 250L;
     private static final double DOUBLE_VALUE = 3.555d;
+    private static final BigDecimal BIGDECIMAL_VALUE = new BigDecimal("12345.678");
     private static final boolean BOOLEAN_VALUE = true;
     private static final Date DATE_VALUE = new Date(10000);
     private static final Calendar CALENDAR_VALUE = Calendar.getInstance();
@@ -80,8 +84,10 @@ public class SlingCrudResourceResolverTe
                 .put("stringProp", STRING_VALUE)
                 .put("stringArrayProp", STRING_ARRAY_VALUE)
                 .put("integerProp", INTEGER_VALUE)
+                .put("longProp", LONG_VALUE)
                 .put("doubleProp", DOUBLE_VALUE)
                 .put("booleanProp", BOOLEAN_VALUE)
+                .put("bigDecimalProp", BIGDECIMAL_VALUE)
                 .put("dateProp", DATE_VALUE)
                 .put("calendarProp", CALENDAR_VALUE)
                 .put("binaryProp", new ByteArrayInputStream(BINARY_VALUE))
@@ -104,12 +110,34 @@ public class SlingCrudResourceResolverTe
         ValueMap props = ResourceUtil.getValueMap(resource1);
         assertEquals(STRING_VALUE, props.get("stringProp", String.class));
         assertArrayEquals(STRING_ARRAY_VALUE, props.get("stringArrayProp", String[].class));
-        assertEquals((Integer) INTEGER_VALUE, props.get("integerProp", Integer.class));
+        assertEquals((Integer)INTEGER_VALUE, props.get("integerProp", Integer.class));
+        assertEquals((Long)LONG_VALUE, props.get("longProp", Long.class));
         assertEquals(DOUBLE_VALUE, props.get("doubleProp", Double.class), 0.0001);
+        assertEquals(BIGDECIMAL_VALUE, props.get("bigDecimalProp", BigDecimal.class));
         assertEquals(BOOLEAN_VALUE, props.get("booleanProp", Boolean.class));
     }
 
     @Test
+    public void testSimpleProperties_IntegerLongConversion() throws IOException {
+        Resource resource1 = resourceResolver.getResource(testRoot.getPath() + "/node1");
+        ValueMap props = ResourceUtil.getValueMap(resource1);
+
+        assertEquals((Integer)(int)LONG_VALUE, props.get("longProp", Integer.class));
+        assertEquals((Long)(long)INTEGER_VALUE, props.get("integerProp", Long.class));
+    }
+
+    @Test
+    @Ignore  // TODO: enable this test when resourceresolver-mock implementation supports BigDecimal conversion (SLING-6416)
+    public void testSimpleProperties_DecimalConversion() throws IOException {
+        Resource resource1 = resourceResolver.getResource(testRoot.getPath() + "/node1");
+        ValueMap props = ResourceUtil.getValueMap(resource1);
+
+        // TODO: enable this test when resourceresolver-mock implementation supports BigDecimal conversion (SLING-6416)
+        assertEquals(new BigDecimal(DOUBLE_VALUE).doubleValue(), props.get("doubleProp", BigDecimal.class).doubleValue(), 0.0001d);
+        assertEquals(BIGDECIMAL_VALUE.doubleValue() , props.get("bigDecimalProp", Double.class), 0.0001d);
+    }
+    
+    @Test
     public void testSimpleProperties_DeepPathAccess() throws IOException {
         Resource resource1 = resourceResolver.getResource(testRoot.getPath());
         assertNotNull(resource1);
@@ -119,7 +147,9 @@ public class SlingCrudResourceResolverTe
         assertEquals(STRING_VALUE, props.get("node1/stringProp", String.class));
         assertArrayEquals(STRING_ARRAY_VALUE, props.get("node1/stringArrayProp", String[].class));
         assertEquals((Integer) INTEGER_VALUE, props.get("node1/integerProp", Integer.class));
+        assertEquals((Long)LONG_VALUE, props.get("node1/longProp", Long.class));
         assertEquals(DOUBLE_VALUE, props.get("node1/doubleProp", Double.class), 0.0001);
+        assertEquals(BIGDECIMAL_VALUE, props.get("node1/bigDecimalProp", BigDecimal.class));
         assertEquals(BOOLEAN_VALUE, props.get("node1/booleanProp", Boolean.class));
         assertEquals(STRING_VALUE, props.get("node1/node11/stringProp11", String.class));