1 21 package com.db4o.test.types; 22 23 import java.util.*; 24 25 import com.db4o.*; 26 import com.db4o.test.*; 27 28 public class RVector implements RTestable{ 29 30 public Object newInstance(){ 31 return new Vector(); 32 } 33 34 public Object set(Object obj, int ver){ 35 TEntry[] arr = new TEntry().test(ver); 36 Vector vt = (Vector)obj; 37 vt.removeAllElements(); 38 for(int i = 0; i < arr.length; i ++){ 39 vt.addElement(arr[i].key); 40 } 41 return obj; 42 } 43 44 public void compare(ObjectContainer con, Object obj, int ver){ 45 Vector vt = (Vector)obj; 46 TEntry[] entries = new TEntry[vt.size()]; 47 Enumeration enu = vt.elements(); 48 int i = 0; 49 while(enu.hasMoreElements()){ 50 entries[i] = new TEntry(); 51 entries[i].key = enu.nextElement(); 52 i++; 53 } 54 new TEntry().compare(entries, ver, true); 55 } 56 57 public void specific(ObjectContainer con, int step){ 58 TEntry entry = new TEntry().firstElement(); 59 Vector vt = (Vector)newInstance(); 60 if(step > 0){ 61 vt.addElement(entry.key); 62 ObjectSet set = con.get(vt); 63 if(set.size() != step){ 64 Regression.addError("Vector member query not found"); 65 }else{ 66 Vector res = (Vector)set.next(); 67 if(! (res.firstElement().equals(new TEntry().firstElement().key))){ 68 Regression.addError("Vector order changed."); 69 } 70 } 71 } 72 entry = new TEntry().noElement(); 73 vt.addElement(entry.key); 74 if(con.get(vt).size() != 0){ 75 Regression.addError("Vector member query found too many"); 76 } 77 } 78 79 80 public boolean jdk2(){ 81 return false; 82 } 83 84 public boolean ver3(){ 85 return false; 86 } 87 88 } 89 | Popular Tags |