/src/main/java/com/atlassian/bamboo/plugin/dotnet/tests/TestReportCollectorImpl.java
Java | 66 lines | 49 code | 6 blank | 11 comment | 0 complexity | c587803bcbf121d7d3a45861fb6ac720 MD5 | raw file
Possible License(s): BSD-3-Clause
- package com.atlassian.bamboo.plugin.dotnet.tests;
- import com.atlassian.bamboo.build.test.TestCollectionResult;
- import com.atlassian.bamboo.build.test.TestCollectionResultBuilder;
- import com.atlassian.bamboo.build.test.TestReportCollector;
- import com.google.common.collect.Sets;
- import org.apache.commons.io.IOUtils;
- import org.jetbrains.annotations.NotNull;
- import java.io.File;
- import java.io.FileInputStream;
- import java.io.FileNotFoundException;
- import java.io.InputStream;
- import java.util.Set;
- /**
- * Collects the results from parsing NUnit report files.
- *
- * @author Ross Rowe
- *
- */
- public class TestReportCollectorImpl implements TestReportCollector
- {
- private TestResultsParser parser;
- /**
- * Constructs a NantNunitTestReportCollector instance.
- *
- * @param parser
- */
- public TestReportCollectorImpl(TestResultsParser parser)
- {
- this.parser = parser;
- }
- @Override
- @NotNull
- public TestCollectionResult collect(@NotNull final File file) throws Exception
- {
- InputStream inputStream = null;
- try {
- inputStream = new FileInputStream(file);
- parser.parse(inputStream);
- return new TestCollectionResultBuilder()
- .addSuccessfulTestResults(parser.getSuccessfulTests())
- .addFailedTestResults(parser.getFailedTests())
- .addSkippedTestResults(parser.getInconclusiveTests())
- .build();
- }
- catch(FileNotFoundException e)
- {
- throw new RuntimeException(e);
- }
- finally
- {
- IOUtils.closeQuietly(inputStream);
- }
- }
- @Override
- @NotNull
- public Set<String> getSupportedFileExtensions()
- {
- return Sets.newHashSet("trx", "xml");
- }
- }