1 21 package com.db4o.db4ounit.common.config; 22 23 import java.io.*; 24 25 import com.db4o.*; 26 import com.db4o.config.*; 27 28 import db4ounit.*; 29 30 public class NonStaticConfigurationTestCase implements TestCase { 31 32 public static class Data { 33 public int id; 34 35 public Data(int id) { 36 this.id = id; 37 } 38 } 39 40 private static final String FILENAME = "nonstaticcfg.yap"; 41 42 public void testOpenWithNonStaticConfiguration() { 43 new File(FILENAME).delete(); 44 Configuration cfg=Db4o.newConfiguration(); 45 cfg.readOnly(true); 46 ObjectContainer db=Db4o.openFile(cfg,FILENAME); 47 try { 48 db.set(new Data(1)); 49 } 50 finally { 51 db.close(); 52 } 53 cfg=Db4o.newConfiguration(); 54 db=Db4o.openFile(cfg,FILENAME); 55 try { 56 db.set(new Data(2)); 57 Assert.areEqual(1,db.query(Data.class).size()); 58 } 59 finally { 60 db.close(); 61 } 62 } 63 64 public void testIndependentObjectConfigs() { 65 Configuration config=Db4o.newConfiguration(); 66 ObjectClass objectConfig = config.objectClass(Data.class); 67 objectConfig.translate(new TNull()); 68 Configuration otherConfig=Db4o.newConfiguration(); 69 Assert.areNotSame(config,otherConfig); 70 Config4Class otherObjectConfig = (Config4Class)otherConfig.objectClass(Data.class); 71 Assert.areNotSame(objectConfig,otherObjectConfig); 72 Assert.isNull(otherObjectConfig.getTranslator()); 73 } 74 } 75 | Popular Tags |