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