privatestatic String[] bug53867TestData = new String[] { "Hello World!", "<meta http-equiv=\"Content-Language\">", "This connection has limited network connectivity.", "Please use this web page & to access file server resources." };
@Test publicvoid testBug53867() { for (int i = 0; i < 10; i++) {
doTestBug53867();
}
}
privatestaticvoid doTestBug53867() { int count = 100000;
for (String testDatum : bug53867TestData) { Assert.assertEquals(doTestBug53867OldVersion(testDatum), Escape.xml(testDatum));
}
for (int i = 0; i < 100; i++) { for (String bug53867TestDatum : bug53867TestData) {
doTestBug53867OldVersion(bug53867TestDatum);
}
} for (int i = 0; i < 100; i++) { for (String bug53867TestDatum : bug53867TestData) {
Escape.xml(bug53867TestDatum);
}
}
long start = System.currentTimeMillis(); for (int i = 0; i < count; i++) { for (String bug53867TestDatum : bug53867TestData) {
doTestBug53867OldVersion(bug53867TestDatum);
}
}
System.out.println("Old escape:" + (System.currentTimeMillis() - start));
start = System.currentTimeMillis(); for (int i = 0; i < count; i++) { for (String bug53867TestDatum : bug53867TestData) {
Escape.xml(bug53867TestDatum);
}
}
System.out.println("New escape:" + (System.currentTimeMillis() - start));
}
privatestatic String doTestBug53867OldVersion(String s) { if (s == null) { returnnull;
}
StringBuilder sb = new StringBuilder(); for (int i = 0; i < s.length(); i++) { char c = s.charAt(i); if (c == '<') {
sb.append("<");
} elseif (c == '>') {
sb.append(">");
} elseif (c == '\'') {
sb.append("'"); // '
} elseif (c == '&') {
sb.append("&");
} elseif (c == '"') {
sb.append("""); // "
} else {
sb.append(c);
}
} return sb.toString();
}
}
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.