private void mergeAndUploadTestResult(GoPublisher publisher, List<File> allFiles) { if (allFiles.size() > 0) { File tempFolder = null; try { tempFolder = FileUtil.createTempFolder(); File testResultSource = new File(tempFolder, MERGED_TEST_RESULT_FOLDER); testResultSource.mkdirs(); UnitTestReportGenerator generator = new UnitTestReportGenerator(publisher, testResultSource); generator.generate(allFiles.toArray(new File[allFiles.size()]), "testoutput"); publisher.upload(testResultSource, "testoutput"); } finally { if (tempFolder != null) { FileUtils.deleteQuietly(tempFolder); } } } else { String message = "No files were found in the Test Results folders"; publisher.taggedConsumeLineWithPrefix(GoPublisher.PUBLISH_ERR, message); LOG.warn(message); } }
@Override public boolean execute(BuildCommand command, BuildSession buildSession) { File workingDirectory = buildSession.resolveRelativeDir(command.getWorkingDirectory()); String uploadPath = command.getStringArg("uploadPath"); String[] sources = command.getArrayArg("srcs"); ArrayList<File> allFiles = findMatchedSourceFiles(buildSession, workingDirectory, sources); if (allFiles.size() > 0) { File tempFolder = null; try { tempFolder = FileUtil.createTempFolder(); File testResultSource = new File(tempFolder, "result"); testResultSource.mkdirs(); UnitTestReportGenerator generator = new UnitTestReportGenerator(buildSession.getPublisher(), testResultSource); generator.generate(allFiles.toArray(new File[allFiles.size()]), uploadPath); } finally { if (tempFolder != null) { FileUtils.deleteQuietly(tempFolder); } } } else { String message = "No files were found in the Test Results folders"; buildSession.printlnWithPrefix(message); LOG.warn(message); } return true; }
@Before public void setUp() throws IOException { temporaryFolder.create(); testFolder = temporaryFolder.newFolder(); publisher = mock(DefaultGoPublisher.class); generator = new UnitTestReportGenerator(publisher, testFolder); }