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