Set<String> notYetList = getNotYetList();
Set<String> declaredKeys = new TreeSet<String>(); for (Example e: examples) {
Set<String> e_decl = e.getDeclaredKeys();
Set<String> e_actual = e.getActualKeys(); for (String k: e_decl) { if (!e_actual.contains(k))
error("Example " + e + " declares key " + k + " but does not generate it");
} for (String k: e_actual) { if (!e_decl.contains(k))
error("Example " + e + " generates key " + k + " but does not declare it");
} for (String k: e.getDeclaredKeys()) { if (notYetList.contains(k))
error("Example " + e + " declares key " + k + " which is also on the \"not yet\" list");
declaredKeys.add(k);
}
}
Module jdk_compiler = ModuleLayer.boot().findModule("jdk.compiler").get();
ResourceBundle b =
ResourceBundle.getBundle("com.sun.tools.javac.resources.compiler", jdk_compiler);
Set<String> resourceKeys = new TreeSet<String>(b.keySet());
for (String dk: declaredKeys) { if (!resourceKeys.contains(dk))
error("Key " + dk + " is declared in tests but is not a valid key in resource bundle");
}
for (String nk: notYetList) { if (!resourceKeys.contains(nk))
error("Key " + nk + " is declared in not-yet list but is not a valid key in resource bundle");
}
for (String rk: resourceKeys) { if (!declaredKeys.contains(rk) && !notYetList.contains(rk))
error("Key " + rk + " is declared in resource bundle but is not in tests or not-yet list");
}
Counts(Set<String> keys) {
nextKey: for (String k: keys) { for (String p: prefixes) { if (k.startsWith(p)) {
inc(p); continue nextKey;
}
}
inc("other");
}
table.put("total", keys.size());
}
int get(String p) {
Integer i = table.get(p); return (i == null ? 0 : i);
}
void inc(String p) {
Integer i = table.get(p);
table.put(p, (i == null ? 1 : i + 1));
}
Map<String,Integer> table = new HashMap<String,Integer>();
};
}
Messung V0.5 in Prozent
¤ Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.0.7Bemerkung:
¤
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.