1 21 package com.db4o.db4ounit.jre12.soda.collections; 22 import java.util.*; 23 24 import com.db4o.query.*; 25 26 27 28 public class STHashtableEUTestCase extends com.db4o.db4ounit.common.soda.util.SodaBaseTestCase { 29 30 public static class ExtendHashtable extends Hashtable{ 31 32 } 33 34 Object col; 35 36 public STHashtableEUTestCase() { 37 } 38 39 public STHashtableEUTestCase(Object [] arr) { 40 ExtendHashtable eh = new ExtendHashtable(); 41 for (int i = 0; i < arr.length; i++) { 42 eh.put(arr[i], new Integer (i)); 43 } 44 col = eh; 45 } 46 47 public Object [] createData() { 48 return new Object [] { 49 new STHashtableEUTestCase(), 50 new STHashtableEUTestCase(new Object [0]), 51 new STHashtableEUTestCase(new Object [] { new Integer (0), new Integer (0)}), 52 new STHashtableEUTestCase( 53 new Object [] { 54 new Integer (1), 55 new Integer (17), 56 new Integer (Integer.MAX_VALUE - 1)}), 57 new STHashtableEUTestCase( 58 new Object [] { 59 new Integer (3), 60 new Integer (17), 61 new Integer (25), 62 new Integer (Integer.MAX_VALUE - 2)}), 63 new STHashtableEUTestCase(new Object [] { "foo", new STElement("bar", "barbar")}), 64 new STHashtableEUTestCase(new Object [] { "foo2", new STElement("bar", "barbar2")}) 65 }; 66 } 67 68 public void testDefaultContainsInteger() { 69 Query q = newQuery(); 70 71 q.constrain(new STHashtableEUTestCase(new Object [] { new Integer (17)})); 72 expect(q, new int[] { 3, 4 }); 73 } 74 75 public void testDefaultContainsString() { 76 Query q = newQuery(); 77 78 q.constrain(new STHashtableEUTestCase(new Object [] { "foo" })); 79 expect(q, new int[] { 5 }); 80 } 81 82 public void testDefaultContainsTwo() { 83 Query q = newQuery(); 84 85 q.constrain(new STHashtableEUTestCase(new Object [] { new Integer (17), new Integer (25)})); 86 expect(q, new int[] { 4 }); 87 } 88 89 public void testDescendOne() { 90 Query q = newQuery(); 91 92 q.constrain(STHashtableEUTestCase.class); 93 q.descend("col").constrain(new Integer (17)); 94 expect(q, new int[] { 3, 4 }); 95 } 96 97 public void testDescendTwo() { 98 Query q = newQuery(); 99 100 q.constrain(STHashtableEUTestCase.class); 101 Query qElements = q.descend("col"); 102 qElements.constrain(new Integer (17)); 103 qElements.constrain(new Integer (25)); 104 expect(q, new int[] { 4 }); 105 } 106 107 public void testDescendSmaller() { 108 Query q = newQuery(); 109 110 q.constrain(STHashtableEUTestCase.class); 111 Query qElements = q.descend("col"); 112 qElements.constrain(new Integer (3)).smaller(); 113 expect(q, new int[] { 2, 3 }); 114 } 115 116 public void testDefaultContainsObject() { 117 Query q = newQuery(); 118 119 q.constrain(new STHashtableEUTestCase(new Object [] { new STElement("bar", null)})); 120 expect(q, new int[] { 5, 6 }); 121 } 122 123 public void testDescendToObject() { 124 Query q = newQuery(); 125 126 q.constrain(new STHashtableEUTestCase()); 127 q.descend("col").descend("foo1").constrain("bar"); 128 expect(q, new int[] { 5, 6 }); 129 } 130 131 } | Popular Tags |