1 21 package com.db4o.test.legacy.soda.arrays.typed; 22 23 import com.db4o.query.*; 24 import com.db4o.test.legacy.soda.*; 25 26 public class STArrStringT implements STClass{ 27 28 public static transient SodaTest st; 29 30 String [] strArr; 31 32 public STArrStringT(){ 33 } 34 35 public STArrStringT(String [] arr){ 36 strArr = arr; 37 } 38 39 public Object [] store() { 40 return new Object []{ 41 new STArrStringT(), 42 new STArrStringT(new String [] {null}), 43 new STArrStringT(new String [] {null, null}), 44 new STArrStringT(new String [] {"foo", "bar", "fly"}), 45 new STArrStringT(new String [] {null, "bar", "wohay", "johy"}) 46 }; 47 } 48 49 public void testDefaultContainsOne(){ 50 Query q = st.query(); 51 Object [] r = store(); 52 q.constrain(new STArrStringT(new String [] {"bar"})); 53 st.expect(q, new Object [] {r[3], r[4]}); 54 } 55 56 public void testDefaultContainsTwo(){ 57 Query q = st.query(); 58 Object [] r = store(); 59 q.constrain(new STArrStringT(new String [] {"foo", "bar"})); 60 st.expect(q, new Object [] {r[3]}); 61 } 62 63 public void testDescendOne(){ 64 Query q = st.query(); 65 Object [] r = store(); 66 q.constrain(STArrStringT.class); 67 q.descend("strArr").constrain("bar"); 68 st.expect(q, new Object [] {r[3], r[4]}); 69 } 70 71 public void testDescendTwo(){ 72 Query q = st.query(); 73 Object [] r = store(); 74 q.constrain(STArrStringT.class); 75 Query qElements = q.descend("strArr"); 76 qElements.constrain("foo"); 77 qElements.constrain("bar"); 78 st.expect(q, new Object [] {r[3]}); 79 } 80 81 public void testDescendOneNot(){ 82 Query q = st.query(); 83 Object [] r = store(); 84 q.constrain(STArrStringT.class); 85 q.descend("strArr").constrain("bar").not(); 86 st.expect(q, new Object [] {r[0], r[1], r[2]}); 87 } 88 89 public void testDescendTwoNot(){ 90 Query q = st.query(); 91 Object [] r = store(); 92 q.constrain(STArrStringT.class); 93 Query qElements = q.descend("strArr"); 94 qElements.constrain("foo").not(); 95 qElements.constrain("bar").not(); 96 st.expect(q, new Object [] {r[0], r[1], r[2]}); 97 } 98 99 100 } 101 102 | Popular Tags |