Update of /var/cvs/tests/bridge/org/mmbase/bridge
In directory james.mmbase.org:/tmp/cvs-serv29426/org/mmbase/bridge

Modified Files:
        EmptyNodeTest.java EmptyNotNullNodeTest.java 
        FilledNodeTest.java NodeTest.java 
Log Message:
MMB-1736


See also: http://cvs.mmbase.org/viewcvs/tests/bridge/org/mmbase/bridge
See also: http://www.mmbase.org/jira/browse/MMB-1736


Index: EmptyNodeTest.java
===================================================================
RCS file: /var/cvs/tests/bridge/org/mmbase/bridge/EmptyNodeTest.java,v
retrieving revision 1.17
retrieving revision 1.18
diff -u -b -r1.17 -r1.18
--- EmptyNodeTest.java  24 Sep 2008 21:28:15 -0000      1.17
+++ EmptyNodeTest.java  1 Dec 2008 22:41:58 -0000       1.18
@@ -69,6 +69,8 @@
                 assertTrue(bytes.length == 0);
             } else if (element.equals("list")) {
                 assertTrue(bytes.length == 0);
+            } else if (element.equals("decimal")) {
+                assertTrue(bytes.length == 0);
             } else {
                 fail("Unknown fieldtype encountered " + element);
             }
@@ -147,6 +149,13 @@
        }
     }
 
+    public void testGetDecimalValue() {
+        for (String element : fieldTypes) {
+            java.math.BigDecimal value = node.getDecimalValue(element + 
"field");
+            assertTrue("Empty " + element + " field queried as datetime 
returned null", value != null);
+       }
+    }
+
     public void testGetListValue() {
         for (String element : fieldTypes) {
             List value = node.getListValue(element + "field");


Index: EmptyNotNullNodeTest.java
===================================================================
RCS file: /var/cvs/tests/bridge/org/mmbase/bridge/EmptyNotNullNodeTest.java,v
retrieving revision 1.14
retrieving revision 1.15
diff -u -b -r1.14 -r1.15
--- EmptyNotNullNodeTest.java   17 Jul 2008 13:57:51 -0000      1.14
+++ EmptyNotNullNodeTest.java   1 Dec 2008 22:41:58 -0000       1.15
@@ -21,7 +21,7 @@
  * an empty node with 'notnull' fields.
  *
  * @author Michiel Meeuwissen
- * @version $Id: EmptyNotNullNodeTest.java,v 1.14 2008/07/17 13:57:51 michiel 
Exp $
+ * @version $Id: EmptyNotNullNodeTest.java,v 1.15 2008/12/01 22:41:58 michiel 
Exp $
  */
 public class EmptyNotNullNodeTest extends EmptyNodeTest {
 
@@ -140,7 +140,7 @@
                 // not-null 'empty' booleans has value "false"
                 assertTrue("Empty " + element + " field queried as string did 
not return \"false\", but \"" + value +"\"",
                     "false".equals(value));
-            } else if (element.equals("long") || element.equals("int")) {
+            } else if (element.equals("long") || element.equals("int") || 
element.equals("decimal")) {
                 // not-null 'empty' numerics has value "-1"
                 assertTrue("Empty " + element + " field queried as string did 
not return \"-1\", but \"" + value +"\"",
                     "-1".equals(value));


Index: FilledNodeTest.java
===================================================================
RCS file: /var/cvs/tests/bridge/org/mmbase/bridge/FilledNodeTest.java,v
retrieving revision 1.24
retrieving revision 1.25
diff -u -b -r1.24 -r1.25
--- FilledNodeTest.java 9 Nov 2008 12:42:32 -0000       1.24
+++ FilledNodeTest.java 1 Dec 2008 22:41:58 -0000       1.25
@@ -12,6 +12,7 @@
 
 import java.text.*;
 import java.util.*;
+import java.math.*;
 import org.w3c.dom.Document;
 import org.w3c.dom.Element;
 
@@ -30,6 +31,8 @@
 
     protected long TEST_TIME = (long) 20 * 356 * 24 * 60 * 60 * 1000;
     protected Date TEST_DATE = new Date(TEST_TIME);
+    protected BigDecimal TEST_DECIMAL = new BigDecimal("123123123.123456789");
+    protected Long TEST_LONG = Long.MAX_VALUE;
 
     public FilledNodeTest(String name) {
         super(name);
@@ -62,7 +65,7 @@
         node.setValue("doublefield", new Double(Double.MAX_VALUE));
         node.setValue("floatfield", new Float(Float.MAX_VALUE));
         node.setValue("intfield", new Integer(Integer.MAX_VALUE));
-        node.setValue("longfield", new Long(Long.MAX_VALUE));
+        node.setValue("longfield", TEST_LONG);
         node.setValue("stringfield", "Bridge testing!");
         node.setValue("xmlfield", getEmptyDocument());
         node.setValue("nodefield", typedefNode);
@@ -70,6 +73,7 @@
         //assertTrue("Not a datetime-datatype but " + dt.getClass(), 
dt.getClass().equals(org.mmbase.datatypes.DateTimeDataType.class)); // would 
give error in Node#setValue otherwise
 
         node.setValue("datetimefield", TEST_DATE);
+        node.setValue("decimalfield", TEST_DECIMAL);
         node.setValue("booleanfield", Boolean.TRUE);
         List<Boolean> list = new ArrayList<Boolean>();
         list.add(Boolean.TRUE);
@@ -100,8 +104,8 @@
                 assertTrue("getValue on int field should give " +  
Integer.MAX_VALUE + " but gave " + object,
                     new Integer(Integer.MAX_VALUE).compareTo((Integer)object) 
== 0);
             } else if (element.equals("long")) {
-                assertTrue("getValue on long field should give " +  
Long.MAX_VALUE + " but gave " + object,
-                    new Long(Long.MAX_VALUE).compareTo((Long)object) == 0);
+                assertTrue("getValue on long field should give " +  TEST_LONG 
+ " but gave " + object,
+                           TEST_LONG.compareTo((Long)object) == 0);
             } else if (element.equals("string")) {
                 assertTrue("getValue on string field should give \"Bridge 
testing!\" but gave " + object,
                     "Bridge testing!".equals(object));
@@ -119,6 +123,9 @@
             } else if (element.equals("datetime")) {
                 assertTrue("getValue on datetime field should give " + 
TEST_DATE +" but gave " + object,
                     TEST_DATE.equals(object));
+            } else if (element.equals("decimal")) {
+                assertTrue("getValue on decimal field should give " + 
TEST_DECIMAL +" but gave " + object,
+                           TEST_DECIMAL.compareTo((BigDecimal) object) == 0);
             } else if (element.equals("boolean")) {
                 assertTrue("getValue on boolean field should give TRUE but 
gave " + object,object.equals(Boolean.TRUE));
             } else if (element.equals("list")) {
@@ -158,6 +165,8 @@
                 assertTrue(bytes.length == 0);
             } else if (element.equals("datetime")) {
                 assertTrue(bytes.length == 0);
+            } else if (element.equals("decimal")) {
+                assertTrue(bytes.length == 0);
             } else if (element.equals("list")) {
                 assertTrue(bytes.length == 0);
             } else {
@@ -190,6 +199,8 @@
             } else if (element.equals("datetime")) {
                 assertTrue(element + "field queried as double did not return " 
+ (double)TEST_TIME/1000 + " but " + d,
                         d == (double)TEST_TIME/1000);
+            } else if (element.equals("decimal")) {
+                assertTrue(d == TEST_DECIMAL.doubleValue());
             } else if (element.equals("list")) {
                 assertTrue(d == -1);
             } else {
@@ -210,7 +221,7 @@
             } else if (element.equals("int")) {
                 assertTrue(f == Integer.MAX_VALUE);
             } else if (element.equals("long")) {
-                assertTrue(f == Long.MAX_VALUE);
+                assertTrue(f == TEST_LONG);
             } else if (element.equals("string")) {
                 assertTrue(f == -1);
             } else if (element.equals("xml")) {
@@ -222,6 +233,9 @@
             } else if (element.equals("datetime")) {
                 assertTrue(element + "field queried as float did not return " 
+ (float)TEST_TIME/1000 + " but " + f,
                         f == (float)TEST_TIME/1000);
+            } else if (element.equals("decimal")) {
+                assertTrue(element + "field queried as float did not return " 
+ TEST_DECIMAL + " but " + f,
+                           f == TEST_DECIMAL.floatValue());
             } else if (element.equals("list")) {
                 assertTrue(f == -1);
             } else {
@@ -254,6 +268,8 @@
             } else if (element.equals("datetime")) {
                 assertTrue(element + "field queried as double did not return " 
+ TEST_TIME / 1000 + " but " + integer,
                         integer == (int) (TEST_TIME / 1000));
+            } else if (element.equals("decimal")) {
+                assertTrue("" + integer, integer == TEST_DECIMAL.intValue());
             } else if (element.equals("list")) {
                 assertTrue(integer == -1);
             } else {
@@ -274,7 +290,7 @@
             } else if (element.equals("int")) {
                 assertTrue(l == Integer.MAX_VALUE);
             } else if (element.equals("long")) {
-                assertTrue(l == Long.MAX_VALUE);
+                assertTrue("Not found " + TEST_LONG + " but " + l, l == 
TEST_LONG);
             } else if (element.equals("string")) {
                 assertTrue(l == -1);
             } else if (element.equals("xml")) {
@@ -288,6 +304,8 @@
                     l == TEST_TIME/1000);
             } else if (element.equals("list")) {
                 assertTrue(l == -1);
+            } else if (element.equals("decimal")) {
+                assertTrue(l == TEST_DECIMAL.longValue());
             } else {
                 fail();
             }
@@ -312,8 +330,8 @@
                 assertTrue(element + "field queried as string did not return " 
+ Integer.MAX_VALUE + " but " + string,
                     String.valueOf(Integer.MAX_VALUE).equals(string));
             } else if (element.equals("long")) {
-                assertTrue(element + "field queried as string did not return " 
+ Long.MAX_VALUE + " but " + string,
-                    String.valueOf(Long.MAX_VALUE).equals(string));
+                assertTrue(element + "field queried as string did not return " 
+ TEST_LONG + " but " + string,
+                           String.valueOf(TEST_LONG).equals(string));
             } else if (element.equals("string")) {
                 assertTrue(element + "field queried as string did not return 
\"Bridge testing!\" but " + string,
                     "Bridge testing!".equals(string));
@@ -342,6 +360,9 @@
             } else if (element.equals("list")) {
                 assertTrue(element + "field queried as string did not return 
\"true,true\" but " + string,
                     "true,true".equals(string));
+            } else if (element.equals("decimal")) {
+                assertTrue(element + "field queried as string did not return " 
+ TEST_DECIMAL + " but " + string,
+                           String.valueOf(TEST_DECIMAL).equals(string));
             } else {
                 fail();
             }
@@ -405,7 +426,12 @@
                             value.getTime()==time);
             } else if (element.equals("long")) {
                 value = node.getDateValue(element + "field");
-                long time = Long.MAX_VALUE*1000; // oddd..
+                long time = Long.MAX_VALUE * 1000; // oddd..
+                assertTrue(element + " field queried as datetime did not 
return "+new Date(time) + ", but " + value,
+                            value.getTime()==time);
+            } else if (element.equals("decimal")) {
+                value = node.getDateValue(element + "field");
+                long time = TEST_DECIMAL.longValue() * 1000;
                 assertTrue(element + " field queried as datetime did not 
return "+new Date(time) + ", but " + value,
                             value.getTime()==time);
             } else {
@@ -420,6 +446,41 @@
        }
     }
 
+    public void testGetDecimalValue() {
+        for (String element : fieldTypes) {
+            BigDecimal l = node.getDecimalValue(element + "field");
+            if (element.equals("binary")) {
+                assertTrue(new BigDecimal(-1).compareTo(l) == 0);
+            } else if (element.equals("double")) {
+                assertTrue("" + l + " != " + Double.MAX_VALUE, new 
BigDecimal(Double.MAX_VALUE).compareTo(l) == 0);
+            } else if (element.equals("float")) {
+                assertTrue(new BigDecimal(Float.MAX_VALUE).compareTo(l) == 0);
+            } else if (element.equals("int")) {
+                assertTrue(new BigDecimal(Integer.MAX_VALUE).compareTo(l) == 
0);
+            } else if (element.equals("long")) {
+                assertTrue("" + l + " != " + TEST_LONG, new 
BigDecimal(TEST_LONG).compareTo(l) == 0);
+            } else if (element.equals("string")) {
+                assertEquals(new BigDecimal(-1), l);
+            } else if (element.equals("xml")) {
+                assertEquals(new BigDecimal(-1), l);
+            } else if (element.equals("node")) {
+                assertEquals(new 
BigDecimal(getCloud().getNodeManager("bb").getNumber()), l);
+            } else if (element.equals("boolean")) {
+                assertEquals(BigDecimal.ONE, l);
+            } else if (element.equals("datetime")) {
+                assertTrue(element + "field queried as double did not return " 
+ TEST_TIME/1000 + " but " + l,
+                           new BigDecimal(TEST_TIME/1000).equals(l));
+            } else if (element.equals("decimal")) {
+                assertEquals(TEST_DECIMAL, l);
+            } else if (element.equals("list")) {
+                assertEquals(new BigDecimal(-1), 1);
+            } else {
+                fail();
+            }
+        }
+    }
+
+
     public void testGetListValue() {
         for (String element : fieldTypes) {
             List value = node.getListValue(element + "field");


Index: NodeTest.java
===================================================================
RCS file: /var/cvs/tests/bridge/org/mmbase/bridge/NodeTest.java,v
retrieving revision 1.25
retrieving revision 1.26
diff -u -b -r1.25 -r1.26
--- NodeTest.java       24 Sep 2008 21:28:15 -0000      1.25
+++ NodeTest.java       1 Dec 2008 22:41:58 -0000       1.26
@@ -23,7 +23,7 @@
  */
 public abstract class NodeTest extends BridgeTest {
     protected Node node;
-    protected static String[] fieldTypes = {"binary", "double", "float", 
"int", "long", "string", "xml", "node", "datetime", "boolean"}; //, "list"};
+    protected static String[] fieldTypes = {"binary", "double", "float", 
"int", "long", "string", "xml", "node", "datetime", "boolean", "decimal"}; //, 
"list"};
     //protected static String[] fieldTypes = {"datetime"};
 
     public NodeTest(String name) {
@@ -49,6 +49,7 @@
         testGetNodeValue();
         testGetBooleanValue();
         testGetDateTimeValue();
+        testGetDecimalValue();
         testGetListValue();
     }
 
@@ -67,6 +68,7 @@
         testGetNodeValue();
         testGetBooleanValue();
         testGetDateTimeValue();
+        testGetDecimalValue();
         testGetListValue();
     }
 
@@ -85,6 +87,7 @@
         testGetNodeValue();
         testGetBooleanValue();
         testGetDateTimeValue();
+        testGetDecimalValue();
         testGetListValue();
     }
 
@@ -136,6 +139,7 @@
         testGetNodeValue();
         testGetBooleanValue();
         testGetDateTimeValue();
+        testGetDecimalValue();
         testGetListValue();
     }
 
@@ -154,6 +158,7 @@
         testGetNodeValue();
         testGetBooleanValue();
         testGetDateTimeValue();
+        testGetDecimalValue();
         testGetListValue();
     }
 
@@ -208,6 +213,7 @@
         testGetXMLValue();
         testGetNodeValue();
         testGetDateTimeValue();
+        testGetDecimalValue();
         testGetListValue();
     }
 
@@ -229,6 +235,8 @@
         testGetListValue();
     }
 
+    abstract public void testGetDecimalValue();
+
     abstract public void testGetListValue();
 
     public void testGetListValueCache() {
_______________________________________________
Cvs mailing list
[email protected]
http://lists.mmbase.org/mailman/listinfo/cvs

Reply via email to