private List<Object> serializeAsList(ProjectInspector inspector) { JobStatus jobStatus = inspector.getJobStatus(); BuildToBeInspected buildToBeInspected = inspector.getBuildToBeInspected(); Build build = inspector.getBuggyBuild(); String state = getPrettyPrintState(inspector); String realState = StringUtils.join(jobStatus.getStepStatuses(), " -> "); String typeOfFailures = StringUtils.join(jobStatus.getFailureNames(), ",") + ""; List<Object> dataCol = new ArrayList<Object>(); dataCol.add(build.getId() + ""); dataCol.add(build.getRepository().getSlug()); dataCol.add(state); dataCol.add(build.getPullRequestNumber() + ""); dataCol.add(Utils.formatCompleteDate(build.getFinishedAt())); dataCol.add(Utils.formatOnlyDay(build.getFinishedAt())); dataCol.add(realState); dataCol.add(Utils.getHostname()); dataCol.add(Utils.formatCompleteDate(new Date())); dataCol.add(Utils.getTravisUrl(build.getId(), build.getRepository().getSlug())); dataCol.add(typeOfFailures); dataCol.add(buildToBeInspected.getRunId()); return dataCol; }
private JsonElement serializeAsJson(ProjectInspector inspector) { JobStatus jobStatus = inspector.getJobStatus(); BuildToBeInspected buildToBeInspected = inspector.getBuildToBeInspected(); Build build = inspector.getBuggyBuild(); String state = getPrettyPrintState(inspector); String realState = StringUtils.join(jobStatus.getStepStatuses(), " -> "); String typeOfFailures = StringUtils.join(jobStatus.getFailureNames(), ","); JsonObject result = new JsonObject(); result.addProperty("buildId", build.getId()); result.addProperty("repositoryName", build.getRepository().getSlug()); result.addProperty("status", state); result.addProperty("prNumber", build.getPullRequestNumber()); result.addProperty("buildFinishedDateStr", Utils.formatCompleteDate(build.getFinishedAt())); this.addDate(result, "buildFinishedDate", build.getFinishedAt()); result.addProperty("buildFinishedDay", Utils.formatOnlyDay(build.getFinishedAt())); result.addProperty("realStatus", realState); result.addProperty("hostname", Utils.getHostname()); result.addProperty("buildReproductionDateStr", Utils.formatCompleteDate(new Date())); this.addDate(result, "buildReproductionDate", new Date()); result.addProperty("travisURL", Utils.getTravisUrl(build.getId(), build.getRepository().getSlug())); result.addProperty("typeOfFailures", typeOfFailures); result.addProperty("runId", buildToBeInspected.getRunId()); result.addProperty("branchURL", jobStatus.getGitBranchUrl()); return result; }
String realState = StringUtils.join(jobStatus.getStepStatuses(), " -> ");
String realState = StringUtils.join(jobStatus.getStepStatuses(), " -> ");
public static String getPrettyPrintState(ProjectInspector inspector) { JobStatus jobStatus = inspector.getJobStatus(); if (inspector instanceof ProjectInspector4Bears) { ProjectInspector4Bears inspector4Bears = (ProjectInspector4Bears) inspector; if (inspector4Bears.isBug()) { return inspector4Bears.getBugType(); } else if (inspector4Bears.getJobStatus().isReproducedAsFail()) { return "BUG REPRODUCED"; } } if (jobStatus.isHasBeenPatched()) { return "PATCHED"; } if (jobStatus.isReproducedAsFail()) { return "test failure"; } List<StepStatus> stepStatuses = jobStatus.getStepStatuses(); for (int i = stepStatuses.size()-1; i >= 0; i--) { StepStatus stepStatus = stepStatuses.get(i); if (stepStatus.getStatus() == StepStatus.StatusKind.FAILURE) { return stepStatus.getDiagnostic(); } } return "UNKNOWN"; }