- Revision
- 1118
- Author
- rfscholte
- Date
- 2011-03-15 15:42:31 -0500 (Tue, 15 Mar 2011)
Log Message
DirectoryScannerTest, JavaDocBuilderTest and JavaProjectBuilderTest migrated to mockito Removing jmock dependency (bye,bye. You've done a great job!)
Modified Paths
Diff
Modified: trunk/qdox/pom.xml (1117 => 1118)
--- trunk/qdox/pom.xml 2011-03-14 22:16:57 UTC (rev 1117) +++ trunk/qdox/pom.xml 2011-03-15 20:42:31 UTC (rev 1118) @@ -463,18 +463,11 @@ <scope>test</scope> </dependency> <dependency> - <groupId>jmock</groupId> - <artifactId>jmock</artifactId> - <version>1.0.0</version> - <scope>test</scope> - </dependency> - <dependency> <groupId>org.mockito</groupId> <artifactId>mockito-core</artifactId> <version>1.8.5</version> <scope>test</scope> </dependency> - </dependencies> <distributionManagement>
Modified: trunk/qdox/src/test/com/thoughtworks/qdox/JavaDocBuilderTest.java (1117 => 1118)
--- trunk/qdox/src/test/com/thoughtworks/qdox/JavaDocBuilderTest.java 2011-03-14 22:16:57 UTC (rev 1117) +++ trunk/qdox/src/test/com/thoughtworks/qdox/JavaDocBuilderTest.java 2011-03-15 20:42:31 UTC (rev 1118) @@ -1,6 +1,7 @@ - package com.thoughtworks.qdox; +import static org.mockito.Mockito.*; + import java.io.File; import java.io.FileWriter; import java.io.IOException; @@ -13,8 +14,7 @@ import java.util.Map; import java.util.Set; -import org.jmock.Mock; -import org.jmock.MockObjectTestCase; +import junit.framework.TestCase; import com.thoughtworks.qdox.model.Annotation; import com.thoughtworks.qdox.model.BeanProperty; @@ -34,7 +34,7 @@ * @author <a href="" Walnes</a> * @author Aslak Hellesøy */ -public class JavaDocBuilderTest extends MockObjectTestCase { +public class JavaDocBuilderTest extends TestCase { private JavaDocBuilder builder; @@ -993,16 +993,14 @@ public void testContinuesProcessingAfterBadFileIfCustomHandlerPermits() throws Exception { createFile("target/test-source/com/blah/Bad.java", "com.blah", "@%! BAD {}}}}"); - Mock mockErrorHandler = mock(JavaDocBuilder.ErrorHandler.class); - // Expectation - mockErrorHandler.expects(once()) - .method("handle") - .with(isA(ParseException.class)); - - builder.setErrorHandler((JavaDocBuilder.ErrorHandler) mockErrorHandler.proxy()); + JavaDocBuilder.ErrorHandler mockErrorHandler = mock(JavaDocBuilder.ErrorHandler.class); + + builder.setErrorHandler(mockErrorHandler); builder.addSourceTree(new File("target/test-source")); assertNotNull(builder.getClassByName("com.blah.Thing")); + + verify(mockErrorHandler).handle( any(ParseException.class) ); } public void testBinaryClassFieldModifiers() {
Modified: trunk/qdox/src/test/com/thoughtworks/qdox/JavaProjectBuilderTest.java (1117 => 1118)
--- trunk/qdox/src/test/com/thoughtworks/qdox/JavaProjectBuilderTest.java 2011-03-14 22:16:57 UTC (rev 1117) +++ trunk/qdox/src/test/com/thoughtworks/qdox/JavaProjectBuilderTest.java 2011-03-15 20:42:31 UTC (rev 1118) @@ -1,5 +1,7 @@ package com.thoughtworks.qdox; +import static org.mockito.Mockito.*; + import java.io.File; import java.io.FileWriter; import java.io.IOException; @@ -13,8 +15,7 @@ import java.util.Map; import java.util.Set; -import org.jmock.Mock; -import org.jmock.MockObjectTestCase; +import junit.framework.TestCase; import com.thoughtworks.qdox.library.OrderedClassLibraryBuilder; import com.thoughtworks.qdox.model.Annotation; @@ -30,8 +31,7 @@ import com.thoughtworks.qdox.parser.ParseException; import com.thoughtworks.qdox.testdata.PropertyClass; -public class JavaProjectBuilderTest - extends MockObjectTestCase +public class JavaProjectBuilderTest extends TestCase { private JavaProjectBuilder builder; @@ -1019,16 +1019,14 @@ public void QDOX2_2FIX___testContinuesProcessingAfterBadFileIfCustomHandlerPermits() throws Exception { createFile("target/test-source/com/blah/Bad.java", "com.blah", "@%! BAD {}}}}"); - Mock mockErrorHandler = mock(JavaDocBuilder.ErrorHandler.class); - // Expectation - mockErrorHandler.expects(once()) - .method("handle") - .with(isA(ParseException.class)); + JavaDocBuilder.ErrorHandler mockErrorHandler = mock(JavaDocBuilder.ErrorHandler.class); -// builder.setErrorHandler((JavaDocBuilder.ErrorHandler) mockErrorHandler.proxy()); +// builder.setErrorHandler( mockErrorHandler ); builder.addSourceTree(new File("target/test-source")); assertNotNull(builder.getClassByName("com.blah.Thing")); + + verify( mockErrorHandler ).handle( any( ParseException.class ) ); } public void testBinaryClassFieldModifiers() {
Modified: trunk/qdox/src/test/com/thoughtworks/qdox/directorywalker/DirectoryScannerTest.java (1117 => 1118)
--- trunk/qdox/src/test/com/thoughtworks/qdox/directorywalker/DirectoryScannerTest.java 2011-03-14 22:16:57 UTC (rev 1117) +++ trunk/qdox/src/test/com/thoughtworks/qdox/directorywalker/DirectoryScannerTest.java 2011-03-15 20:42:31 UTC (rev 1118) @@ -1,137 +1,197 @@ package com.thoughtworks.qdox.directorywalker; +import static org.mockito.Mockito.*; +import static org.junit.Assert.*; import java.io.File; import java.util.List; -import org.jmock.Mock; -import org.jmock.MockObjectTestCase; +import org.junit.Test; -public class DirectoryScannerTest extends MockObjectTestCase { +public class DirectoryScannerTest +{ - class MockFile extends File { - boolean isDirectory; - File[] children; + private File newMockFile( String name ) + { + return newMockFile( name, false ); + } - public MockFile(String pathname) { - super(pathname); - this.isDirectory = false; - } + private File newMockFile( String name, boolean isDirectory ) + { + File result = mock( File.class ); + when( result.getName() ).thenReturn( name ); + when( result.isDirectory() ).thenReturn( isDirectory ); + return result; + } - public MockFile(String pathname, boolean isDirectory) { - super(pathname); - this.isDirectory = isDirectory; - } + @Test + public void testSingleDirectory() + { + File rootDir = newMockFile( "root", true ); + { + File blahTxt = newMockFile( "blah.txt" ); + File fooTxt = newMockFile( "foo.txt" ); + File pigJava = newMockFile( "pig.java" ); - public boolean isDirectory() { - return this.isDirectory; + when( rootDir.listFiles() ).thenReturn( new File[] { blahTxt, fooTxt, pigJava } ); } - public File[] listFiles() { - return children; - } + DirectoryScanner scanner = new DirectoryScanner( rootDir ); + List<File> files = scanner.scan(); + assertEquals( 3, files.size() ); + assertEquals( "blah.txt", files.get( 0 ).getName() ); + assertEquals( "foo.txt", files.get( 1 ).getName() ); + assertEquals( "pig.java", files.get( 2 ).getName() ); } - public DirectoryScannerTest(String s) { - super(s); - } + @Test + public void testDirectoryWithSubdir() + { + File rootDir = newMockFile( "root", true ); + { + File subDir = newMockFile( "subdir", true ); + { + File child1Txt = newMockFile( "child1.txt" ); + File child2Txt = newMockFile( "child2.txt" ); - public void testSingleDirectory() { - MockFile rootDir = new MockFile("root", true); - rootDir.children = new File[]{new MockFile("blah.txt"), new MockFile("foo.txt"), new MockFile("pig.java")}; - DirectoryScanner scanner = new DirectoryScanner(rootDir); - List<File> files = scanner.scan(); - assertEquals(3, files.size()); - assertEquals("blah.txt", files.get(0).getName()); - assertEquals("foo.txt", files.get(1).getName()); - assertEquals("pig.java", files.get(2).getName()); - } + when( subDir.listFiles() ).thenReturn( new File[] { child1Txt, child2Txt } ); + } + File fooTxt = newMockFile( "foo.txt" ); + File pigJava = newMockFile( "pig.java" ); - public void testDirectoryWithSubdir() { - MockFile rootDir = new MockFile("root", true); - MockFile subDir = new MockFile("subdir", true); - subDir.children = new File[]{new MockFile("child1.txt"), new MockFile("child2.txt")}; - rootDir.children = new File[]{subDir, new MockFile("foo.txt"), new MockFile("pig.java")}; - DirectoryScanner scanner = new DirectoryScanner(rootDir); + when( rootDir.listFiles() ).thenReturn( new File[] { subDir, fooTxt, pigJava } ); + } + + DirectoryScanner scanner = new DirectoryScanner( rootDir ); List<File> files = scanner.scan(); - assertEquals(4, files.size()); - assertEquals("child1.txt", files.get(0).getName()); - assertEquals("child2.txt", files.get(1).getName()); - assertEquals("foo.txt", files.get(2).getName()); - assertEquals("pig.java", files.get(3).getName()); + assertEquals( 4, files.size() ); + assertEquals( "child1.txt", files.get( 0 ).getName() ); + assertEquals( "child2.txt", files.get( 1 ).getName() ); + assertEquals( "foo.txt", files.get( 2 ).getName() ); + assertEquals( "pig.java", files.get( 3 ).getName() ); } - public void testDirectoryWithSubdirWithSubdir() { - MockFile rootDir = new MockFile("root", true); - MockFile subDir1 = new MockFile("subdir", true); - MockFile subDir2 = new MockFile("subdir2", true); - subDir2.children = new File[]{new MockFile("grandChild1.txt")}; - subDir1.children = new File[]{subDir2, new MockFile("child1.txt"), new MockFile("child2.txt")}; - rootDir.children = new File[]{subDir1, new MockFile("foo.txt"), new MockFile("pig.java")}; + @Test + public void testDirectoryWithSubdirWithSubdir() + { + File rootDir = newMockFile( "root", true ); + { + File subDir1 = newMockFile( "subdir", true ); + { + File subDir2 = newMockFile( "subdir2", true ); + { + File grandChild1Txt = newMockFile( "grandChild1.txt" ); - DirectoryScanner scanner = new DirectoryScanner(rootDir); + when( subDir2.listFiles() ).thenReturn( new File[] { grandChild1Txt } ); + } + File child1Txt = newMockFile( "child1.txt" ); + File child2Txt = newMockFile( "child2.txt" ); + + when( subDir1.listFiles() ).thenReturn( new File[] { subDir2, child1Txt, child2Txt } ); + + } + File fooTxt = newMockFile( "foo.txt" ); + File pigJava = newMockFile( "pig.java" ); + + when( rootDir.listFiles() ).thenReturn( new File[] { subDir1, fooTxt, pigJava } ); + } + + DirectoryScanner scanner = new DirectoryScanner( rootDir ); List<File> files = scanner.scan(); - assertEquals(5, files.size()); - assertEquals("grandChild1.txt", files.get(0).getName()); - assertEquals("child1.txt", files.get(1).getName()); - assertEquals("child2.txt", files.get(2).getName()); - assertEquals("foo.txt", files.get(3).getName()); - assertEquals("pig.java", files.get(4).getName()); + assertEquals( 5, files.size() ); + assertEquals( "grandChild1.txt", files.get( 0 ).getName() ); + assertEquals( "child1.txt", files.get( 1 ).getName() ); + assertEquals( "child2.txt", files.get( 2 ).getName() ); + assertEquals( "foo.txt", files.get( 3 ).getName() ); + assertEquals( "pig.java", files.get( 4 ).getName() ); } - public void testSuffixFilter() { - MockFile rootDir = new MockFile("root", true); - rootDir.children = new File[]{new MockFile("blah.txt"), new MockFile("foo.java"), new MockFile("pig.java")}; - DirectoryScanner scanner = new DirectoryScanner(rootDir); - scanner.addFilter(new SuffixFilter(".java")); + @Test + public void testSuffixFilter() + { + File rootDir = newMockFile( "root", true ); + { + File blahTxt = newMockFile( "blah.txt" ); + File fooJava = newMockFile( "foo.java" ); + File pigJava = newMockFile( "pig.java" ); + + when( rootDir.listFiles() ).thenReturn( new File[] { blahTxt, fooJava, pigJava } ); + } + DirectoryScanner scanner = new DirectoryScanner( rootDir ); + scanner.addFilter( new SuffixFilter( ".java" ) ); List<File> files = scanner.scan(); - assertEquals(2, files.size()); - assertEquals("foo.java", files.get(0).getName()); - assertEquals("pig.java", files.get(1).getName()); + assertEquals( 2, files.size() ); + assertEquals( "foo.java", files.get( 0 ).getName() ); + assertEquals( "pig.java", files.get( 1 ).getName() ); } - public void testFilterCallback() { - MockFile rootDir = new MockFile("root", true); - rootDir.children = new File[]{new MockFile("blah.txt"), new MockFile("foo.java"), new MockFile("pig.java")}; - DirectoryScanner scanner = new DirectoryScanner(rootDir); - Filter mockFilter = new Filter() { - public boolean filter(File file) { - return file.getName().equals("foo.java"); + @Test + public void testFilterCallback() + { + File rootDir = newMockFile( "root", true ); + { + File blahTxt = newMockFile( "blah.txt" ); + File fooJava = newMockFile( "foo.java" ); + File pigJava = newMockFile( "pig.java" ); + + when( rootDir.listFiles() ).thenReturn( new File[] { blahTxt, fooJava, pigJava } ); + } + DirectoryScanner scanner = new DirectoryScanner( rootDir ); + Filter mockFilter = new Filter() + { + public boolean filter( File file ) + { + return file.getName().equals( "foo.java" ); } }; - scanner.addFilter(mockFilter); + scanner.addFilter( mockFilter ); List<File> files = scanner.scan(); - assertEquals(1, files.size()); - assertEquals("foo.java", files.get(0).getName()); + assertEquals( 1, files.size() ); + assertEquals( "foo.java", files.get( 0 ).getName() ); } - public void testMultipleFilters() { - MockFile rootDir = new MockFile("root", true); - rootDir.children = new File[]{new MockFile("blah.txt"), new MockFile("foo.java"), - new MockFile("pig.java"), new MockFile("foo.txt")}; - DirectoryScanner scanner = new DirectoryScanner(rootDir); - scanner.addFilter(new SuffixFilter(".java")); - scanner.addFilter(new Filter() { - public boolean filter(File file) { - return file.getName().startsWith("foo"); + @Test + public void testMultipleFilters() + { + File rootDir = newMockFile( "root", true ); + { + File blahTxt = newMockFile( "blah.txt" ); + File fooJava = newMockFile( "foo.java" ); + File pigJava = newMockFile( "pig.java" ); + File fooTxt = newMockFile( "foo.txt" ); + + when( rootDir.listFiles() ).thenReturn( new File[] { blahTxt, fooJava, pigJava, fooTxt } ); + } + DirectoryScanner scanner = new DirectoryScanner( rootDir ); + scanner.addFilter( new SuffixFilter( ".java" ) ); + scanner.addFilter( new Filter() + { + public boolean filter( File file ) + { + return file.getName().startsWith( "foo" ); } - }); + } ); List<File> files = scanner.scan(); - assertEquals(1, files.size()); - assertEquals("foo.java", files.get(0).getName()); + assertEquals( 1, files.size() ); + assertEquals( "foo.java", files.get( 0 ).getName() ); } - public void testFileVisitor() { - MockFile rootDir = new MockFile("root", true); - rootDir.children = new File[]{new MockFile("blah.txt"), new MockFile("foo.txt"), new MockFile("pig.java")}; - DirectoryScanner scanner = new DirectoryScanner(rootDir); - Mock mockFileVisitor = new Mock(FileVisitor.class); - mockFileVisitor.expects(once()).method("visitFile").with(same(rootDir.children[0])); - mockFileVisitor.expects(once()).method("visitFile").with(same(rootDir.children[1])); - mockFileVisitor.expects(once()).method("visitFile").with(same(rootDir.children[2])); + @Test + public void testFileVisitor() + { + File rootDir = newMockFile( "root", true ); - scanner.scan((FileVisitor) mockFileVisitor.proxy()); + File blahTxt = newMockFile( "blah.txt" ); + File fooJava = newMockFile( "foo.java" ); + File pigJava = newMockFile( "pig.java" ); - mockFileVisitor.verify(); + when( rootDir.listFiles() ).thenReturn( new File[] { blahTxt, fooJava, pigJava } ); + DirectoryScanner scanner = new DirectoryScanner( rootDir ); + FileVisitor visitor = mock( FileVisitor.class ); + scanner.scan( visitor ); + + org.mockito.Mockito.verify( visitor ).visitFile( blahTxt ); + org.mockito.Mockito.verify( visitor ).visitFile( fooJava ); + org.mockito.Mockito.verify( visitor ).visitFile( pigJava ); } }
To unsubscribe from this list please visit:
