From: <ga...@us...> - 2012-04-27 06:53:45
|
Revision: 5898 http://jnode.svn.sourceforge.net/jnode/?rev=5898&view=rev Author: galatnm Date: 2012-04-27 06:53:38 +0000 (Fri, 27 Apr 2012) Log Message: ----------- Add basic unit tests for FileSystemManager. Modified Paths: -------------- trunk/JNode.ipr trunk/fs/.classpath Added Paths: ----------- trunk/fs/src/test/org/jnode/fs/service/ trunk/fs/src/test/org/jnode/fs/service/def/ trunk/fs/src/test/org/jnode/fs/service/def/FileSystemManagerTest.java Modified: trunk/JNode.ipr =================================================================== --- trunk/JNode.ipr 2012-04-19 15:52:49 UTC (rev 5897) +++ trunk/JNode.ipr 2012-04-27 06:53:38 UTC (rev 5898) @@ -186,6 +186,7 @@ <component name="CopyrightManager" default=""> <module2copyright /> </component> + <component name="CppTools.Loader" reportImplicitCastToBool="false" reportNameReferencedOnce="false" warnedAboutFileOutOfSourceRoot="true" version="3" compilerSelect="AUTO" /> <component name="DependenciesAnalyzeManager"> <option name="myForwardDirection" value="false" /> </component> @@ -364,6 +365,99 @@ </item> </group> </component> + <component name="ProjectCodeStyleSettingsManager"> + <option name="PER_PROJECT_SETTINGS"> + <value> + <option name="JAVA_INDENT_OPTIONS"> + <value> + <option name="INDENT_SIZE" value="4" /> + <option name="CONTINUATION_INDENT_SIZE" value="4" /> + <option name="TAB_SIZE" value="4" /> + <option name="USE_TAB_CHARACTER" value="false" /> + <option name="SMART_TABS" value="false" /> + <option name="LABEL_INDENT_SIZE" value="-4" /> + <option name="LABEL_INDENT_ABSOLUTE" value="false" /> + <option name="USE_RELATIVE_INDENTS" value="false" /> + </value> + </option> + <option name="CLASS_COUNT_TO_USE_IMPORT_ON_DEMAND" value="100" /> + <option name="NAMES_COUNT_TO_USE_IMPORT_ON_DEMAND" value="100" /> + <option name="PACKAGES_TO_USE_IMPORT_ON_DEMAND"> + <value /> + </option> + <option name="IMPORT_LAYOUT_TABLE"> + <value> + <package name="" withSubpackages="true" static="false" /> + <emptyLine /> + <package name="javax" withSubpackages="false" static="false" /> + <package name="java" withSubpackages="false" static="false" /> + <emptyLine /> + <package name="" withSubpackages="true" static="true" /> + </value> + </option> + <option name="CALL_PARAMETERS_WRAP" value="1" /> + <option name="METHOD_PARAMETERS_WRAP" value="1" /> + <option name="THROWS_LIST_WRAP" value="1" /> + <option name="EXTENDS_KEYWORD_WRAP" value="1" /> + <option name="THROWS_KEYWORD_WRAP" value="1" /> + <option name="METHOD_CALL_CHAIN_WRAP" value="1" /> + <option name="BINARY_OPERATION_WRAP" value="1" /> + <option name="TERNARY_OPERATION_WRAP" value="1" /> + <option name="ARRAY_INITIALIZER_WRAP" value="1" /> + <option name="ASSIGNMENT_WRAP" value="1" /> + <XML> + <option name="XML_LEGACY_SETTINGS_IMPORTED" value="true" /> + </XML> + <ADDITIONAL_INDENT_OPTIONS fileType="gsp"> + <option name="INDENT_SIZE" value="2" /> + </ADDITIONAL_INDENT_OPTIONS> + <ADDITIONAL_INDENT_OPTIONS fileType="scala"> + <option name="INDENT_SIZE" value="2" /> + <option name="TAB_SIZE" value="2" /> + </ADDITIONAL_INDENT_OPTIONS> + <ADDITIONAL_INDENT_OPTIONS fileType="sql"> + <option name="INDENT_SIZE" value="2" /> + </ADDITIONAL_INDENT_OPTIONS> + <ADDITIONAL_INDENT_OPTIONS fileType="yml"> + <option name="INDENT_SIZE" value="2" /> + </ADDITIONAL_INDENT_OPTIONS> + <codeStyleSettings language="Groovy"> + <option name="CALL_PARAMETERS_WRAP" value="1" /> + <option name="METHOD_PARAMETERS_WRAP" value="1" /> + <option name="THROWS_LIST_WRAP" value="1" /> + <option name="EXTENDS_KEYWORD_WRAP" value="1" /> + <option name="THROWS_KEYWORD_WRAP" value="1" /> + <option name="METHOD_CALL_CHAIN_WRAP" value="1" /> + <option name="BINARY_OPERATION_WRAP" value="1" /> + <option name="TERNARY_OPERATION_WRAP" value="1" /> + <option name="ARRAY_INITIALIZER_WRAP" value="1" /> + <option name="ASSIGNMENT_WRAP" value="1" /> + <option name="PARENT_SETTINGS_INSTALLED" value="true" /> + <indentOptions> + <option name="INDENT_SIZE" value="2" /> + </indentOptions> + </codeStyleSettings> + <codeStyleSettings language="JAVA"> + <option name="CALL_PARAMETERS_WRAP" value="1" /> + <option name="METHOD_PARAMETERS_WRAP" value="1" /> + <option name="THROWS_LIST_WRAP" value="1" /> + <option name="EXTENDS_KEYWORD_WRAP" value="1" /> + <option name="THROWS_KEYWORD_WRAP" value="1" /> + <option name="METHOD_CALL_CHAIN_WRAP" value="1" /> + <option name="BINARY_OPERATION_WRAP" value="1" /> + <option name="TERNARY_OPERATION_WRAP" value="1" /> + <option name="ARRAY_INITIALIZER_WRAP" value="1" /> + <option name="ASSIGNMENT_WRAP" value="1" /> + <option name="PARENT_SETTINGS_INSTALLED" value="true" /> + <indentOptions> + <option name="CONTINUATION_INDENT_SIZE" value="4" /> + <option name="LABEL_INDENT_SIZE" value="-4" /> + </indentOptions> + </codeStyleSettings> + </value> + </option> + <option name="USE_PER_PROJECT_SETTINGS" value="true" /> + </component> <component name="ProjectDetails"> <option name="projectName" value="JNode" /> </component> @@ -389,7 +483,7 @@ <component name="ProjectResources"> <default-html-doctype>http://www.w3.org/1999/xhtml</default-html-doctype> </component> - <component name="ProjectRootManager" version="2" languageLevel="JDK_1_6" assert-keyword="true" jdk-15="true" project-jdk-name="1.6 - jnode" project-jdk-type="JavaSDK" /> + <component name="ProjectRootManager" version="2" languageLevel="JDK_1_6" assert-keyword="true" jdk-15="true" project-jdk-name="1.6" project-jdk-type="JavaSDK" /> <component name="ResourceManagerContainer"> <option name="myResourceBundles"> <value> @@ -403,20 +497,6 @@ <entry key="$PROJECT_DIR$"> <value> <SvnBranchConfiguration> - <option name="branchMap"> - <map> - <entry key="https://jnode.svn.sourceforge.net/svnroot/jnode/branches"> - <value> - <list /> - </value> - </entry> - <entry key="https://jnode.svn.sourceforge.net/svnroot/jnode/tags"> - <value> - <list /> - </value> - </entry> - </map> - </option> <option name="branchUrls"> <list> <option value="https://jnode.svn.sourceforge.net/svnroot/jnode/branches" /> @@ -430,25 +510,6 @@ <entry key="$PROJECT_DIR$/distr"> <value> <SvnBranchConfiguration> - <option name="branchMap"> - <map> - <entry key="https://jnode.svn.sourceforge.net/svnroot/jnode/branches"> - <value> - <list /> - </value> - </entry> - <entry key="https://jnode.svn.sourceforge.net/svnroot/jnode/classlib6"> - <value> - <list /> - </value> - </entry> - <entry key="https://jnode.svn.sourceforge.net/svnroot/jnode/tags"> - <value> - <list /> - </value> - </entry> - </map> - </option> <option name="branchUrls"> <list> <option value="https://jnode.svn.sourceforge.net/svnroot/jnode/branches" /> @@ -463,25 +524,6 @@ <entry key="$PROJECT_DIR$/gui"> <value> <SvnBranchConfiguration> - <option name="branchMap"> - <map> - <entry key="https://jnode.svn.sourceforge.net/svnroot/jnode/branches"> - <value> - <list /> - </value> - </entry> - <entry key="https://jnode.svn.sourceforge.net/svnroot/jnode/classlib6"> - <value> - <list /> - </value> - </entry> - <entry key="https://jnode.svn.sourceforge.net/svnroot/jnode/tags"> - <value> - <list /> - </value> - </entry> - </map> - </option> <option name="branchUrls"> <list> <option value="https://jnode.svn.sourceforge.net/svnroot/jnode/branches" /> @@ -496,25 +538,6 @@ <entry key="$PROJECT_DIR$/net"> <value> <SvnBranchConfiguration> - <option name="branchMap"> - <map> - <entry key="https://jnode.svn.sourceforge.net/svnroot/jnode/branches"> - <value> - <list /> - </value> - </entry> - <entry key="https://jnode.svn.sourceforge.net/svnroot/jnode/classlib6"> - <value> - <list /> - </value> - </entry> - <entry key="https://jnode.svn.sourceforge.net/svnroot/jnode/tags"> - <value> - <list /> - </value> - </entry> - </map> - </option> <option name="branchUrls"> <list> <option value="https://jnode.svn.sourceforge.net/svnroot/jnode/branches" /> Modified: trunk/fs/.classpath =================================================================== --- trunk/fs/.classpath 2012-04-19 15:52:49 UTC (rev 5897) +++ trunk/fs/.classpath 2012-04-27 06:53:38 UTC (rev 5898) @@ -17,5 +17,6 @@ <classpathentry kind="lib" path="/core/lib/log4j-1.2.8.jar"/> <classpathentry kind="lib" path="/core/lib/junit-4.5.jar"/> <classpathentry kind="lib" path="/all/lib/classlib.jar" sourcepath="/all/lib/classlib-src.jar"/> + <classpathentry kind="lib" path="/core/lib/mockito-all-1.8.5.jar"/> <classpathentry kind="output" path="build/classes"/> </classpath> Added: trunk/fs/src/test/org/jnode/fs/service/def/FileSystemManagerTest.java =================================================================== --- trunk/fs/src/test/org/jnode/fs/service/def/FileSystemManagerTest.java (rev 0) +++ trunk/fs/src/test/org/jnode/fs/service/def/FileSystemManagerTest.java 2012-04-27 06:53:38 UTC (rev 5898) @@ -0,0 +1,58 @@ +package org.jnode.fs.service.def; + +import static junit.framework.Assert.assertEquals; +import static junit.framework.Assert.assertNotNull; +import static org.mockito.Mockito.mock; +import static org.mockito.Mockito.when; + +import java.util.Collection; + +import org.jnode.driver.Device; +import org.jnode.fs.FileSystem; +import org.junit.Before; +import org.junit.Test; + +public class FileSystemManagerTest { + + private FileSystemManager fsm; + private FileSystem<?> fs; + private Device device; + + @Before + public void setUp() throws Exception { + fsm = new FileSystemManager(); + device = mock(Device.class); + fs = mock(FileSystem.class); + when(fs.getDevice()).thenReturn(device); + } + + @Test + public void testUnregisterFileSystem() throws Exception { + fsm.registerFileSystem(fs); + FileSystem<?> result = fsm.unregisterFileSystem(device); + assertNotNull(result); + } + + @Test + public void testGetFileSystem() throws Exception { + fsm.registerFileSystem(fs); + FileSystem<?> result = fsm.getFileSystem(device); + assertNotNull(result); + } + + @Test + public void testFileSystems() throws Exception { + fsm.registerFileSystem(fs); + Collection<FileSystem<?>> result = fsm.fileSystems(); + assertNotNull(result); + assertEquals(1,result.size()); + + fsm.unregisterFileSystem(device); + + result = fsm.fileSystems(); + assertNotNull(result); + assertEquals(0,result.size()); + } + + +} This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |