private void addFileToFs(DefaultInputFile inputFile) { context.fileSystem().add(inputFile); }
@Test public void testExecution() throws IOException { File significantCode = new File(baseDir, "src/foo.xoo.significantCode"); FileUtils.write(significantCode, "1,1,4\n2,2,5"); context.fileSystem().add(inputFile); sensor.execute(context); assertThat(context.significantCodeTextRange("foo:src/foo.xoo", 1)).isEqualTo(range(1, 1, 4)); assertThat(context.significantCodeTextRange("foo:src/foo.xoo", 2)).isEqualTo(range(2, 2, 5)); }
@Test public void testLineHitAndConditions() throws IOException { File coverage = new File(baseDir, "src/foo.xoo.itcoverage"); FileUtils.write(coverage, "1:3:4:2"); InputFile inputFile = new TestInputFileBuilder("foo", "src/foo.xoo").setModuleBaseDir(baseDir.toPath()).setLanguage("xoo").setLines(10).build(); context.fileSystem().add(inputFile); sensor.execute(context); assertThat(context.lineHits("foo:src/foo.xoo", 1)).isEqualTo(3); assertThat(context.conditions("foo:src/foo.xoo", 1)).isEqualTo(4); assertThat(context.coveredConditions("foo:src/foo.xoo", 1)).isEqualTo(2); } }
@Test public void testLineHitAndConditions() throws IOException { File coverage = new File(baseDir, "src/foo.xoo.overallcoverage"); FileUtils.write(coverage, "1:3:4:2"); InputFile inputFile = new TestInputFileBuilder("foo", "src/foo.xoo").setLanguage("xoo").setModuleBaseDir(baseDir.toPath()).setLines(10).build(); context.fileSystem().add(inputFile); sensor.execute(context); assertThat(context.lineHits("foo:src/foo.xoo", 1)).isEqualTo(3); assertThat(context.conditions("foo:src/foo.xoo", 1)).isEqualTo(4); assertThat(context.coveredConditions("foo:src/foo.xoo", 1)).isEqualTo(2); } }
@Test public void testLineHitAndConditions() throws IOException { File coverage = new File(baseDir, "src/foo.xoo.coverage"); FileUtils.write(coverage, "1:3:4:2"); InputFile inputFile = new TestInputFileBuilder("foo", "src/foo.xoo").setLanguage("xoo").setModuleBaseDir(baseDir.toPath()).setLines(10).build(); context.fileSystem().add(inputFile); sensor.execute(context); assertThat(context.lineHits("foo:src/foo.xoo", 1)).isEqualTo(3); assertThat(context.conditions("foo:src/foo.xoo", 1)).isEqualTo(4); assertThat(context.coveredConditions("foo:src/foo.xoo", 1)).isEqualTo(2); } }
@Test public void testNoExceptionIfNoFileWithOffsets() { context.fileSystem().add(inputFile); sensor.execute(context); }
private void createSourceFile(String content) throws IOException { File sourceFile = new File(baseDir, "src/foo.xoo"); FileUtils.write(sourceFile, content); InputFile inputFile = new TestInputFileBuilder("foo", "src/foo.xoo") .setLanguage("xoo") .initMetadata(content) .setModuleBaseDir(baseDir.toPath()) .build(); context.fileSystem().add(inputFile); }
@Test public void testLineHitNoConditions() throws IOException { File coverage = new File(baseDir, "src/foo.xoo.coverage"); FileUtils.write(coverage, "1:3\n\n#comment"); InputFile inputFile = new TestInputFileBuilder("foo", "src/foo.xoo").setLanguage("xoo").setModuleBaseDir(baseDir.toPath()).setLines(10).build(); context.fileSystem().add(inputFile); sensor.execute(context); assertThat(context.lineHits("foo:src/foo.xoo", 1)).isEqualTo(3); }
@Test public void testLineHitNoConditions() throws IOException { File coverage = new File(baseDir, "src/foo.xoo.overallcoverage"); FileUtils.write(coverage, "1:3\n\n#comment"); InputFile inputFile = new TestInputFileBuilder("foo", "src/foo.xoo").setLanguage("xoo").setModuleBaseDir(baseDir.toPath()).setLines(10).build(); context.fileSystem().add(inputFile); sensor.execute(context); assertThat(context.lineHits("foo:src/foo.xoo", 1)).isEqualTo(3); }
@Test public void testLineHitNoConditions() throws IOException { File coverage = new File(baseDir, "src/foo.xoo.itcoverage"); FileUtils.write(coverage, "1:3\n\n#comment"); InputFile inputFile = new TestInputFileBuilder("foo", "src/foo.xoo").setModuleBaseDir(baseDir.toPath()).setLanguage("xoo").setLines(10).build(); context.fileSystem().add(inputFile); sensor.execute(context); assertThat(context.lineHits("foo:src/foo.xoo", 1)).isEqualTo(3); }
@Before public void prepare() throws IOException { MockitoAnnotations.initMocks(this); File baseDir = temp.newFolder(); context = SensorContextTester.create(baseDir); file = new TestInputFileBuilder("foo", "src/ManyStatements.java") .setModuleBaseDir(baseDir.toPath()) .setCharset(StandardCharsets.UTF_8) .setLanguage("java").build(); context.fileSystem().add(file); File ioFile = file.file(); FileUtils.copyURLToFile(this.getClass().getResource("ManyStatements.java"), ioFile); }
@Test public void failIfMetricNotFound() throws IOException { File measures = new File(baseDir, "src/foo.xoo.measures"); FileUtils.write(measures, "unknow:12\n\n#comment"); InputFile inputFile = new TestInputFileBuilder("foo", "src/foo.xoo").setLanguage("xoo").setModuleBaseDir(baseDir.toPath()).build(); context.fileSystem().add(inputFile); thrown.expect(IllegalStateException.class); sensor.execute(context); } }
@Test public void testFs() throws Exception { DefaultFileSystem fs = new DefaultFileSystem(temp.newFolder()); tester.setFileSystem(fs); assertThat(tester.fileSystem().baseDir()).isNotEqualTo(baseDir); }
@Test public void testNoExecutionIfNoSyntaxFile() { DefaultInputFile inputFile = new TestInputFileBuilder("foo", "src/foo.xoo") .setLanguage("xoo") .setModuleBaseDir(baseDir.toPath()) .build(); context.fileSystem().add(inputFile); sensor.execute(context); }
@Test public void testNoExecutionIfNoSymbolFile() { InputFile inputFile = new TestInputFileBuilder("foo", "src/foo.xoo").setLanguage("xoo").setModuleBaseDir(baseDir.toPath()).build(); context.fileSystem().add(inputFile); sensor.execute(context); }
@Test public void testNoExecutionIfNoCoverageFile() { InputFile inputFile = new TestInputFileBuilder("foo", "src/foo.xoo").setLanguage("xoo").setModuleBaseDir(baseDir.toPath()).build(); context.fileSystem().add(inputFile); sensor.execute(context); }
@Test public void testNoExecutionIfNoCoverageFile() { InputFile inputFile = new TestInputFileBuilder("foo", "src/foo.xoo").setLanguage("xoo").setModuleBaseDir(baseDir.toPath()).build(); context.fileSystem().add(inputFile); sensor.execute(context); }
@Test public void testNoExecutionIfNoCoverageFile() { InputFile inputFile = new TestInputFileBuilder("foo", "src/foo.xoo").setLanguage("xoo").build(); context.fileSystem().add(inputFile); sensor.execute(context); }
@Test public void testNoExecutionIfNoMeasureFile() { InputFile inputFile = new TestInputFileBuilder("foo", "src/foo.xoo").setLanguage("xoo").build(); context.fileSystem().add(inputFile); sensor.execute(context); }
@Test public void testRule() throws IOException { DefaultInputFile inputFile = new TestInputFileBuilder("foo", "src/Foo.xoo") .setLanguage(Xoo.KEY) .initMetadata("a\nb\nc\nd\ne\nf\ng\nh\ni\n") .build(); SensorContextTester context = SensorContextTester.create(temp.newFolder()); context.fileSystem().add(inputFile); sensor.execute(context); assertThat(context.allIssues()).hasSize(10); // One issue per line for (Issue issue : context.allIssues()) { assertThat(issue.gap()).isNull(); } }