1 21 package com.db4o.db4ounit.common.assorted; 22 23 import com.db4o.*; 24 import com.db4o.ext.*; 25 26 import db4ounit.*; 27 import db4ounit.extensions.*; 28 import db4ounit.extensions.fixtures.AbstractFileBasedDb4oFixture; 29 30 import java.io.File ; 31 32 33 public class SystemInfoTestCase extends AbstractDb4oTestCase{ 34 35 public static class Item { 36 37 } 38 39 public static void main(String [] arguments) { 40 new SystemInfoTestCase().runSolo(); 41 } 42 43 protected void db4oCustomTearDown() throws Exception { 44 Db4o.configure().freespace().useRamSystem(); 45 } 46 47 public void testDefaultFreespaceInfo(){ 48 assertFreespaceInfo(fileSession().systemInfo()); 49 } 50 51 public void testIndexBasedFreespaceInfo() throws Exception { 52 Db4o.configure().freespace().useIndexSystem(); 53 reopen(); 54 assertFreespaceInfo(fileSession().systemInfo()); 55 } 56 57 private void assertFreespaceInfo(SystemInfo info){ 58 Assert.isNotNull(info); 59 Item item = new Item(); 60 db().set(item); 61 db().commit(); 62 db().delete(item); 63 db().commit(); 64 Assert.isTrue(info.freespaceEntryCount() > 0); 65 Assert.isTrue(info.freespaceSize() > 0); 66 } 67 68 public void testTotalSize(){ 69 if(fixture() instanceof AbstractFileBasedDb4oFixture ){ 70 AbstractFileBasedDb4oFixture fixture = (AbstractFileBasedDb4oFixture) fixture(); 72 File f = new File (fixture.getAbsolutePath()); 73 long expectedSize = f.length(); 74 long actual = db().systemInfo().totalSize(); 75 Assert.areEqual(expectedSize, actual); 76 } 77 } 78 79 } 80 | Popular Tags |