1 21 package com.db4o.db4ounit.common.handlers; 22 23 import com.db4o.*; 24 25 import db4ounit.Assert; 26 import db4ounit.extensions.AbstractDb4oTestCase; 27 28 31 public class YDoubleTestCase extends AbstractDb4oTestCase { 32 33 private TypeHandler4 _handler; 34 35 protected void db4oSetupBeforeStore() throws Exception { 36 _handler = new YDouble(stream()); 37 } 38 39 public void testMarshalling() { 40 final Double expected = new Double (1.1); 41 42 YapReader buffer = new YapReader(_handler.linkLength()); 43 _handler.writeIndexEntry(buffer, expected); 44 45 buffer.seek(0); 46 final Object actual = _handler.readIndexEntry(buffer); 47 Assert.areEqual(expected, actual); 48 } 49 50 public void testComparison() { 51 assertComparison(0, 1.1, 1.1); 52 assertComparison(1, 1.0, 1.1); 53 assertComparison(-1, 1.1, 0.5); 54 } 55 56 private void assertComparison(final int expected, final double prepareWith, final double compareTo) { 57 _handler.prepareComparison(new Double (prepareWith)); 58 final Double doubleCompareTo = new Double (compareTo); 59 Assert.areEqual(expected, _handler.compareTo(doubleCompareTo)); 60 switch (expected) { 61 case 0: 62 Assert.isTrue(_handler.isEqual(doubleCompareTo)); 63 Assert.isFalse(_handler.isGreater(doubleCompareTo)); 64 Assert.isFalse(_handler.isSmaller(doubleCompareTo)); 65 break; 66 case 1: 67 Assert.isFalse(_handler.isEqual(doubleCompareTo)); 68 Assert.isTrue(_handler.isGreater(doubleCompareTo)); 69 Assert.isFalse(_handler.isSmaller(doubleCompareTo)); 70 break; 71 case -1: 72 Assert.isFalse(_handler.isEqual(doubleCompareTo)); 73 Assert.isFalse(_handler.isGreater(doubleCompareTo)); 74 Assert.isTrue(_handler.isSmaller(doubleCompareTo)); 75 break; 76 } 77 78 } 79 } 80 | Popular Tags |