KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > com > db4o > test > legacy > soda > collections > STHashtableU


1 /* Copyright (C) 2004 - 2006 db4objects Inc. http://www.db4o.com
2
3 This file is part of the db4o open source object database.
4
5 db4o is free software; you can redistribute it and/or modify it under
6 the terms of version 2 of the GNU General Public License as published
7 by the Free Software Foundation and as clarified by db4objects' GPL
8 interpretation policy, available at
9 http://www.db4o.com/about/company/legalpolicies/gplinterpretation/
10 Alternatively you can write to db4objects, Inc., 1900 S Norfolk Street,
11 Suite 350, San Mateo, CA 94403, USA.
12
13 db4o is distributed in the hope that it will be useful, but WITHOUT ANY
14 WARRANTY; without even the implied warranty of MERCHANTABILITY or
15 FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
16 for more details.
17
18 You should have received a copy of the GNU General Public License along
19 with this program; if not, write to the Free Software Foundation, Inc.,
20 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */

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