blob: cedc6ada9d53606f88c26263095ff5f128cb01a8 [file] [log] [blame]
// Copyright 2008 Google Inc. All Rights Reserved.
package autotest.common;
import com.google.gwt.json.client.JSONObject;
import java.util.Arrays;
public class StatusSummary extends AbstractStatusSummary {
public int passed = 0;
public int complete = 0;
public int incomplete = 0;
public int total = 0; // TEST_NA is included here, but not in any other
private String[] contents = null;
public static StatusSummary getStatusSummary(JSONObject group, String passCountField,
String completeCountField, String incompleteCountField,
String groupCountField) {
StatusSummary summary = new StatusSummary();
summary.passed = getField(group, passCountField);
summary.complete = getField(group, completeCountField);
summary.incomplete = getField(group, incompleteCountField);
summary.total = getField(group, groupCountField);
if (group.containsKey("extra_info")) {
summary.contents = Utils.JSONtoStrings(group.get("extra_info").isArray());
}
return summary;
}
private static int getField(JSONObject group, String field) {
return (int) group.get(field).isNumber().doubleValue();
}
/**
* Force construction to go through getStatusSummary() factory method.
*/
private StatusSummary() {}
public int getTotal() {
return total;
}
public String formatContents() {
String result = formatStatusCounts();
if (contents != null) {
result += "<br>";
result += Utils.joinStrings("<br>", Arrays.asList(contents), true);
}
return result;
}
@Override
protected int getComplete() {
return complete;
}
@Override
protected int getIncomplete() {
return incomplete;
}
@Override
protected int getPassed() {
return passed;
}
}