public String toJson() { JSONConverter jsonConverter = Injectors.getInjector().getInstance(JSONConverter.class); try(ByteArrayOutputStream outputStream = new ByteArrayOutputStream()) { jsonConverter.toJson(this, outputStream); return outputStream.toString(); } catch (IOException e) { return ""; } }
@Override public File generateReportFor(TestOutcome testOutcome, TestOutcomes allTestOutcomes) throws IOException { TestOutcome storedTestOutcome = testOutcome.withQualifier(qualifier); Preconditions.checkNotNull(outputDirectory); String reportFilename = reportFor(storedTestOutcome); File report = new File(getOutputDirectory(), reportFilename); try(OutputStream outputStream = new BufferedOutputStream(new FileOutputStream(report))){ jsonConverter.toJson(storedTestOutcome, outputStream); } return report; }
public String toJson() { JSONConverter jsonConverter = Injectors.getInjector().getInstance(JSONConverter.class); try(ByteArrayOutputStream outputStream = new ByteArrayOutputStream()) { jsonConverter.toJson(this, outputStream); return outputStream.toString(); } catch (IOException e) { return ""; } }
@Override public File generateReportFor(TestOutcome testOutcome, TestOutcomes allTestOutcomes) throws IOException { TestOutcome storedTestOutcome = testOutcome.withQualifier(qualifier); Preconditions.checkNotNull(outputDirectory); String reportFilename = reportFor(storedTestOutcome); File report = new File(getOutputDirectory(), reportFilename); try(OutputStream outputStream = new BufferedOutputStream(new FileOutputStream(report))){ jsonConverter.toJson(storedTestOutcome, outputStream); } return report; }
public String toJson() { JSONConverter jsonConverter = Injectors.getInjector().getInstance(JSONConverter.class); try (ByteArrayOutputStream outputStream = new ByteArrayOutputStream()) { jsonConverter.toJson(this, outputStream); return outputStream.toString(Charset.defaultCharset()); } catch (IOException e) { LOGGER.error("serialization error for testOutcome with name \"" + this.getName() + "\"", e); return ""; } }
@Override public File generateReportFor(TestOutcome testOutcome) throws IOException { TestOutcome storedTestOutcome = testOutcome.withQualifier(qualifier); Preconditions.checkNotNull(outputDirectory); String reportFilename = reportFor(storedTestOutcome); String unique = UUID.randomUUID().toString(); File temporary = new File(getOutputDirectory(), reportFilename.concat(unique)); File report = new File(getOutputDirectory(), reportFilename); report.createNewFile(); LOGGER.debug("Generating JSON report for {} to file {} (using temp file {})", testOutcome.getTitle(), report.getAbsolutePath(), temporary.getAbsolutePath()); try(OutputStream outputStream = new BufferedOutputStream(new FileOutputStream(temporary))){ jsonConverter.toJson(storedTestOutcome, outputStream); outputStream.flush(); } SafelyMoveFiles.withMaxRetriesOf(3).from(temporary.toPath()).to(report.toPath()); return report; }