diff options
author | Godin <mandrikov@gmail.com> | 2010-10-19 15:53:00 +0000 |
---|---|---|
committer | Godin <mandrikov@gmail.com> | 2010-10-19 15:53:00 +0000 |
commit | 9edb39c091f8bf970be6849746ac7d9128d44fad (patch) | |
tree | d20afe503d7b0472a51d50b4b98fed0e9420461f /plugins/sonar-findbugs-plugin/src | |
parent | db2c24f023c8ab6dfbd473269086c61847720dea (diff) | |
download | sonarqube-9edb39c091f8bf970be6849746ac7d9128d44fad.tar.gz sonarqube-9edb39c091f8bf970be6849746ac7d9128d44fad.zip |
SONAR-1772: Add FindbugsNativeSensorTest
Diffstat (limited to 'plugins/sonar-findbugs-plugin/src')
-rw-r--r-- | plugins/sonar-findbugs-plugin/src/test/java/org/sonar/plugins/findbugs/FindbugsNativeSensorTest.java | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/plugins/sonar-findbugs-plugin/src/test/java/org/sonar/plugins/findbugs/FindbugsNativeSensorTest.java b/plugins/sonar-findbugs-plugin/src/test/java/org/sonar/plugins/findbugs/FindbugsNativeSensorTest.java new file mode 100644 index 00000000000..4530003378f --- /dev/null +++ b/plugins/sonar-findbugs-plugin/src/test/java/org/sonar/plugins/findbugs/FindbugsNativeSensorTest.java @@ -0,0 +1,49 @@ +package org.sonar.plugins.findbugs; + +import org.apache.maven.project.MavenProject; +import org.junit.Test; +import org.sonar.api.profiles.RulesProfile; +import org.sonar.api.resources.DefaultProjectFileSystem; +import org.sonar.api.resources.Project; + +import static org.junit.Assert.assertFalse; +import static org.junit.Assert.assertTrue; +import static org.mockito.Mockito.mock; +import static org.mockito.Mockito.when; + +public class FindbugsNativeSensorTest extends FindbugsTests { + + @Test + public void shouldExecuteWhenSomeRulesAreActive() throws Exception { + FindbugsSensor sensor = new FindbugsSensor(createRulesProfileWithActiveRules(), new FindbugsRuleFinder(), null); + Project project = createProject(); + assertTrue(sensor.shouldExecuteOnProject(project)); + } + + @Test + public void shouldNotExecuteWhenNoRulesAreActive() throws Exception { + FindbugsSensor analyser = new FindbugsSensor(RulesProfile.create(), new FindbugsRuleFinder(), null); + Project pom = createProject(); + assertFalse(analyser.shouldExecuteOnProject(pom)); + } + + @Test + public void shouldNotExecuteOnEar() { + Project project = createProject(); + when(project.getPom().getPackaging()).thenReturn("ear"); + FindbugsSensor analyser = new FindbugsSensor(createRulesProfileWithActiveRules(), new FindbugsRuleFinder(), null); + assertFalse(analyser.shouldExecuteOnProject(project)); + } + + private Project createProject() { + DefaultProjectFileSystem fileSystem = mock(DefaultProjectFileSystem.class); + when(fileSystem.hasJavaSourceFiles()).thenReturn(Boolean.TRUE); + + MavenProject mavenProject = mock(MavenProject.class); + Project project = mock(Project.class); + when(project.getFileSystem()).thenReturn(fileSystem); + when(project.getPom()).thenReturn(mavenProject); + return project; + } + +} |