1 21 package com.db4o.db4ounit.common.soda.util; 22 23 import com.db4o.*; 24 import com.db4o.query.*; 25 26 import db4ounit.*; 27 28 public class SodaTestUtil { 29 30 public static void expectOne(Query query, Object object) { 31 expect(query, new Object [] { object }); 32 } 33 34 public static void expectNone(Query query) { 35 expect(query, null); 36 } 37 38 public static void expect(Query query, Object [] results) { 39 expect(query, results, false); 40 } 41 42 public static void expectOrdered(Query query, Object [] results) { 43 expect(query, results, true); 44 } 45 46 public static void expect(Query query, Object [] results, boolean ordered) { 47 ObjectSet set = query.execute(); 48 if (results == null || results.length == 0) { 49 if (set.size() > 0) { 50 Assert.fail("No content expected."); 51 } 52 return; 53 } 54 int j = 0; 55 if (set.size() == results.length) { 56 while (set.hasNext()) { 57 Object obj = set.next(); 58 boolean found = false; 59 if (ordered) { 60 if (TCompare.isEqual(results[j], obj)) { 61 results[j] = null; 62 found = true; 63 } 64 j++; 65 } else { 66 for (int i = 0; i < results.length; i++) { 67 if (results[i] != null) { 68 if (TCompare.isEqual(results[i], obj)) { 69 results[i] = null; 70 found = true; 71 break; 72 } 73 } 74 } 75 } 76 if (!found) { 77 Assert.fail("Object not expected: " + obj); 78 } 79 } 80 for (int i = 0; i < results.length; i++) { 81 if (results[i] != null) { 82 Assert.fail("Expected object not returned: " + results[i]); 83 } 84 } 85 } else { 86 Assert.fail( 87 "Unexpected size returned.\nExpected: " 88 + results.length 89 + " Returned: " 90 + set.size()); 91 } 92 } 93 94 private SodaTestUtil() {} 95 } 96 | Popular Tags |