From b41465c2da1fa40e015fd8b00ebcd62fe5c01396 Mon Sep 17 00:00:00 2001
From: akwizgran <akwizgran@users.sourceforge.net>
Date: Thu, 14 Jul 2011 19:21:16 +0100
Subject: [PATCH] Use commons-io to measure free space.

---
 components/net/sf/briar/db/H2Database.java | 3 ++-
 test/net/sf/briar/db/H2DatabaseTest.java   | 6 ++++--
 2 files changed, 6 insertions(+), 3 deletions(-)

diff --git a/components/net/sf/briar/db/H2Database.java b/components/net/sf/briar/db/H2Database.java
index 82df78d049..2ddb2f7899 100644
--- a/components/net/sf/briar/db/H2Database.java
+++ b/components/net/sf/briar/db/H2Database.java
@@ -55,7 +55,8 @@ class H2Database extends JdbcDatabase {
 	public long getFreeSpace() throws DbException {
 		try {
 			File dir = home.getParentFile();
-			long free = FileSystemUtils.freeSpaceKb(dir.getAbsolutePath());
+			String path = dir.getAbsolutePath();
+			long free = FileSystemUtils.freeSpaceKb(path) * 1024L;
 			long used = getDiskSpace(dir);
 			long quota = maxSize - used;
 			long min =  Math.min(free, quota);
diff --git a/test/net/sf/briar/db/H2DatabaseTest.java b/test/net/sf/briar/db/H2DatabaseTest.java
index a46755d92b..80d4687665 100644
--- a/test/net/sf/briar/db/H2DatabaseTest.java
+++ b/test/net/sf/briar/db/H2DatabaseTest.java
@@ -25,6 +25,7 @@ import net.sf.briar.api.protocol.GroupId;
 import net.sf.briar.api.protocol.Message;
 import net.sf.briar.api.protocol.MessageId;
 
+import org.apache.commons.io.FileSystemUtils;
 import org.jmock.Expectations;
 import org.jmock.Mockery;
 import org.junit.After;
@@ -628,7 +629,7 @@ public class H2DatabaseTest extends TestCase {
 	}
 
 	@Test
-	public void testGetFreeSpace() throws DbException {
+	public void testGetFreeSpace() throws Exception {
 		byte[] largeBody = new byte[ONE_MEGABYTE];
 		for(int i = 0; i < largeBody.length; i++) largeBody[i] = (byte) i;
 		Message message1 = new TestMessage(messageId, MessageId.NONE, groupId,
@@ -636,7 +637,8 @@ public class H2DatabaseTest extends TestCase {
 		Database<Connection> db = open(false);
 
 		// Sanity check: there should be enough space on disk for this test
-		assertTrue(testDir.getFreeSpace() > MAX_SIZE);
+		String path = testDir.getAbsolutePath();
+		assertTrue(FileSystemUtils.freeSpaceKb(path) * 1024L > MAX_SIZE);
 		// The free space should not be more than the allowed maximum size
 		long free = db.getFreeSpace();
 		assertTrue(free <= MAX_SIZE);
-- 
GitLab