1 21 package com.db4o.db4ounit.jre11.assorted; 22 23 import java.io.IOException ; 24 import java.net.URL ; 25 26 import com.db4o.*; 27 import com.db4o.db4ounit.common.assorted.UUIDTestItem; 28 import com.db4o.foundation.Hashtable4; 29 import com.db4o.foundation.io.*; 30 31 import db4ounit.*; 32 33 36 public class UUIDMigrationTestCase implements TestCase { 37 38 public static void main(String [] args) { 39 new TestRunner(UUIDMigrationTestCase.class).run(); 40 } 41 42 public void test() throws Exception { 43 configure(); 44 try { 45 final ObjectContainer container = Db4o.openFile(getUUIDMigrationSourcePath()); 46 try { 47 Assert.isNotNull(container); 48 49 final Hashtable4 uuidCache = new Hashtable4(); 50 51 UUIDTestItem.assertItemsCanBeRetrievedByUUID(container.ext(), uuidCache); 52 Assert.areEqual(2, uuidCache.size()); 53 54 UUIDTestItem.assertItemsCanBeRetrievedByUUID(container.ext(), uuidCache); 55 } finally { 56 if (null != container) container.close(); 57 } 58 59 } finally { 60 restoreConfiguration(); 61 } 62 } 63 64 private String getUUIDMigrationSourcePath() throws IOException { 65 final URL resource = getClass().getResource("./UUIDMigrationSource-db4o-5.5.yap"); 66 String targetFile = resource.getFile()+".work"; 67 File4.copy(resource.getFile(), targetFile); 68 return targetFile; 69 } 70 71 private void restoreConfiguration() { 72 Db4o.configure().allowVersionUpdates(false); 73 Db4o.configure().generateUUIDs(-1); 74 } 75 76 private void configure() { 77 Db4o.configure().allowVersionUpdates(true); 78 Db4o.configure().generateUUIDs(Integer.MAX_VALUE); 79 } 80 } 81 | Popular Tags |