Revision: 5631
          http://jnode.svn.sourceforge.net/jnode/?rev=5631&view=rev
Author:   galatnm
Date:     2009-08-07 08:37:53 +0000 (Fri, 07 Aug 2009)

Log Message:
-----------
Fix wrong variable used in getRecord method and update unit test.

Modified Paths:
--------------
    trunk/fs/src/fs/org/jnode/fs/hfsplus/catalog/Catalog.java
    trunk/fs/src/test/org/jnode/fs/hfsplus/HfsPlusFileSystemTest.java

Modified: trunk/fs/src/fs/org/jnode/fs/hfsplus/catalog/Catalog.java
===================================================================
--- trunk/fs/src/fs/org/jnode/fs/hfsplus/catalog/Catalog.java   2009-08-02 
06:12:19 UTC (rev 5630)
+++ trunk/fs/src/fs/org/jnode/fs/hfsplus/catalog/Catalog.java   2009-08-07 
08:37:53 UTC (rev 5631)
@@ -279,7 +279,7 @@
         int currentNodeNumber = getBTHeaderRecord().getRootNode();
         int nodeSize = getBTHeaderRecord().getNodeSize();
         ByteBuffer nodeData = ByteBuffer.allocate(nodeSize);
-        fs.getApi().read(catalogHeaderNodeOffset + (currentNodeNumber * 
nodeSize), buffer);
+        fs.getApi().read(catalogHeaderNodeOffset + (currentNodeNumber * 
nodeSize), nodeData);
         CatalogNode node = new CatalogNode(nodeData.array(), nodeSize);
         int currentOffset = 0;
         CatalogKey cKey = new CatalogKey(parentID, nodeName);

Modified: trunk/fs/src/test/org/jnode/fs/hfsplus/HfsPlusFileSystemTest.java
===================================================================
--- trunk/fs/src/test/org/jnode/fs/hfsplus/HfsPlusFileSystemTest.java   
2009-08-02 06:12:19 UTC (rev 5630)
+++ trunk/fs/src/test/org/jnode/fs/hfsplus/HfsPlusFileSystemTest.java   
2009-08-07 08:37:53 UTC (rev 5631)
@@ -17,7 +17,7 @@
  * along with this library; If not, write to the Free Software Foundation, 
Inc., 
  * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
  */
- 
+
 package org.jnode.fs.hfsplus;
 
 import java.io.File;
@@ -36,58 +36,72 @@
 import org.jnode.fs.FileSystemException;
 import org.jnode.fs.service.FileSystemService;
 import org.jnode.fs.service.def.FileSystemPlugin;
+import org.jnode.test.support.TestUtils;
 
 public class HfsPlusFileSystemTest extends TestCase {
-    private String TEST_IMAGE_FILENAME = "/home/flesire/kvm/hfs2.img";
+    
+    private Device device;
+    private FileSystemService fss;
+    
+    @Override
+    protected void setUp() throws Exception {
+        super.setUp();
+        // create test device.
+        device = createTestDisk(false);
+        // create file system service.
+        fss = createFSService();
+     
+    }
 
-    public void testCreate() {
-        try {
-            File file = new File(TEST_IMAGE_FILENAME);
-            Device device = new FileDevice(file, "rw");
-            DummyPluginDescriptor desc = new DummyPluginDescriptor(true);
-            DummyExtensionPoint ep = new DummyExtensionPoint("types",
-                    "org.jnode.fs.types", "types");
-            desc.addExtensionPoint(ep);
-            DummyExtension extension = new DummyExtension();
-            DummyConfigurationElement element = new 
DummyConfigurationElement();
-            element
-                    .addAttribute("class", HfsPlusFileSystemType.class
-                            .getName());
-            extension.addElement(element);
-            ep.addExtension(extension);
+    public void testCreate() throws Exception {
+        HfsPlusFileSystemType type = 
fss.getFileSystemType(HfsPlusFileSystemType.ID);
+        HfsPlusFileSystem fs = new HfsPlusFileSystem(device, false, type);
+        HFSPlusParams params = new HFSPlusParams();
+        params.setVolumeName("testdrive");
+        params.setBlockSize(HFSPlusParams.OPTIMAL_BLOCK_SIZE);
+        params.setJournaled(false);
+        params.setJournalSize(HFSPlusParams.DEFAULT_JOURNAL_SIZE);
+        fs.create(params);
+        Superblock vh = fs.getVolumeHeader();
+        assertEquals(Superblock.HFSPLUS_SUPER_MAGIC, vh.getMagic());
+        assertEquals(4096, vh.getBlockSize());
 
-            FileSystemService fss = new FileSystemPlugin(desc);
-            HfsPlusFileSystemType type = fss
-                    .getFileSystemType(HfsPlusFileSystemType.ID);
-            HfsPlusFileSystem fs = new HfsPlusFileSystem(device, false, type);
-            HFSPlusParams params = new HFSPlusParams();
-            params.setVolumeName("testdrive");
-            params.setBlockSize(HFSPlusParams.OPTIMAL_BLOCK_SIZE);
-            params.setJournaled(false);
-            params.setJournalSize(HFSPlusParams.DEFAULT_JOURNAL_SIZE);
-            fs.create(params);
-        } catch (Exception e) {
-            e.printStackTrace();
-        }
     }
 
-    public void testRead() {
-        File file = new File(TEST_IMAGE_FILENAME);
-        try {
-            Device device = new FileDevice(file, "rw");
-            HfsPlusFileSystem fs = new HfsPlusFileSystemType().create(device,
-                    false);
-            fs.read();
-            fs.createRootEntry();
-            @SuppressWarnings("unused")
-            FSDirectory root = fs.getRootEntry().getDirectory();
-        } catch (FileNotFoundException e) {
-            e.printStackTrace();
-        } catch (IOException e) {
-            e.printStackTrace();
-        } catch (FileSystemException e) {
-            e.printStackTrace();
-        }
+    public void testRead() throws Exception {
+        HfsPlusFileSystemType type = 
fss.getFileSystemType(HfsPlusFileSystemType.ID);
+        HfsPlusFileSystem fs = new HfsPlusFileSystem(device, false, type);
+        HFSPlusParams params = new HFSPlusParams();
+        params.setVolumeName("testdrive");
+        params.setBlockSize(HFSPlusParams.OPTIMAL_BLOCK_SIZE);
+        params.setJournaled(false);
+        params.setJournalSize(HFSPlusParams.DEFAULT_JOURNAL_SIZE);
+        fs.create(params);
+        fs.close();
+        fs = new HfsPlusFileSystemType().create(device, false);
+        fs.read();
+        fs.createRootEntry();
+        FSDirectory root = fs.getRootEntry().getDirectory();
+        root.addDirectory("test");
     }
 
+    private Device createTestDisk(boolean formatted) throws IOException {
+        File file = TestUtils.makeTempFile("hfsDevice", "10M");
+        Device device = new FileDevice(file, "rw");
+        return device;
+
+    }
+
+    private FileSystemService createFSService() {
+        DummyPluginDescriptor desc = new DummyPluginDescriptor(true);
+        DummyExtensionPoint ep = new DummyExtensionPoint("types", 
"org.jnode.fs.types", "types");
+        desc.addExtensionPoint(ep);
+        DummyExtension extension = new DummyExtension();
+        DummyConfigurationElement element = new DummyConfigurationElement();
+        element.addAttribute("class", HfsPlusFileSystemType.class.getName());
+        extension.addElement(element);
+        ep.addExtension(extension);
+        return new FileSystemPlugin(desc);
+    }
+
 }


This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.

------------------------------------------------------------------------------
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
trial. Simplify your report design, integration and deployment - and focus on 
what you do best, core application coding. Discover what's new with 
Crystal Reports now.  http://p.sf.net/sfu/bobj-july
_______________________________________________
Jnode-svn-commits mailing list
Jnode-svn-commits@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/jnode-svn-commits

Reply via email to