Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

8229186: Improve error messages for TestStringIntrinsics failures #112

Closed
wants to merge 14 commits into from
Closed
Changes from 3 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
84 changes: 42 additions & 42 deletions test/lib-test/jdk/test/lib/format/ArrayDiffTest.java
Original file line number Diff line number Diff line change
@@ -53,9 +53,9 @@ public void testOutputFitsWidth() {
ArrayDiff diff = ArrayDiff.of(first, second);
String expected = String.format(
"Arrays differ starting from [index: 4]:%n" +
"[7, 8, 9, 10, 11, 12, 13]%n" +
"[7, 8, 9, 10, 125, 12, 13]%n" +
" ^^^^");
"[7, 8, 9, 10, 11, 12, 13]%n" +
"[7, 8, 9, 10, 125, 12, 13]%n" +
" ^^^^");

assertFalse(diff.areEqual());
assertEquals(diff.format(), expected);
@@ -69,9 +69,9 @@ public void testIntegers() {
ArrayDiff diff = ArrayDiff.of(first, second);
String expected = String.format(
"Arrays differ starting from [index: 2]:%n" +
"[7, 8, 10, 11, 12]%n" +
"[7, 8, 9, 10, 11, 12, 13]%n" +
" ^^^");
"[7, 8, 10, 11, 12]%n" +
"[7, 8, 9, 10, 11, 12, 13]%n" +
" ^^^");

assertFalse(diff.areEqual());
assertEquals(diff.format(), expected);
@@ -85,9 +85,9 @@ public void testLongs() {
ArrayDiff diff = ArrayDiff.of(first, second);
String expected = String.format(
"Arrays differ starting from [index: 3]:%n" +
"[1, 2, 3, 4]%n" +
"[1, 2, 3, 10]%n" +
" ^^^");
"[1, 2, 3, 4]%n" +
"[1, 2, 3, 10]%n" +
" ^^^");

assertFalse(diff.areEqual());
assertEquals(diff.format(), expected);
@@ -101,9 +101,9 @@ public void testFirstElementIsWrong() {
ArrayDiff diff = ArrayDiff.of(first, second);
String expected = String.format(
"Arrays differ starting from [index: 0]:%n" +
"[122]%n" +
"[ 7, 8, 9, 10, 125, 12, 13]%n" +
" ^^^");
"[122]%n" +
"[ 7, 8, 9, 10, 125, 12, 13]%n" +
" ^^^");

assertFalse(diff.areEqual());
assertEquals(diff.format(), expected);
@@ -117,9 +117,9 @@ public void testOneElementIsEmpty() {
ArrayDiff diff = ArrayDiff.of(first, second);
String expected = String.format(
"Arrays differ starting from [index: 0]:%n" +
"[7, 8, 9, 10, 125, 12, 13]%n" +
"[]%n" +
" ^");
"[7, 8, 9, 10, 125, 12, 13]%n" +
"[]%n" +
" ^");

assertFalse(diff.areEqual());
assertEquals(diff.format(), expected);
@@ -133,9 +133,9 @@ public void testOutputDoesntFitWidth() {
ArrayDiff diff = ArrayDiff.of(first, second, 20, Integer.MAX_VALUE);
String expected = String.format(
"Arrays differ starting from [index: 1]:%n" +
"[1, 2, 3, 4, 5, ...%n" +
"[1, F, 3, 4, 5, ...%n" +
" ^^");
"[1, 2, 3, 4, 5, ...%n" +
"[1, F, 3, 4, 5, ...%n" +
" ^^");

assertFalse(diff.areEqual());
assertEquals(diff.format(), expected);
@@ -149,9 +149,9 @@ public void testVariableElementWidthOutputDoesntFitWidth() {
ArrayDiff diff = ArrayDiff.of(first, second, 20, Integer.MAX_VALUE);
String expected = String.format(
"Arrays differ starting from [index: 1]:%n" +
"[1, 2, 3, 4, 5, ...%n" +
"[1, 112, 3, 4, 5, ...%n" +
" ^^^^");
"[1, 2, 3, 4, 5, ...%n" +
"[1, 112, 3, 4, 5, ...%n" +
" ^^^^");

assertFalse(diff.areEqual());
assertEquals(diff.format(), expected);
@@ -165,9 +165,9 @@ public void testContextBefore() {
ArrayDiff diff = ArrayDiff.of(first, second, 20, 2);
String expected = String.format(
"Arrays differ starting from [index: 4]:%n" +
"... 3, 4, 5, 6, 7]%n" +
"... 3, 4, F, 6, 7]%n" +
" ^^");
"... 3, 4, 5, 6, 7]%n" +
"... 3, 4, F, 6, 7]%n" +
" ^^");

assertFalse(diff.areEqual());
assertEquals(diff.format(), expected);
@@ -181,9 +181,9 @@ public void testBoundedBytesWithDifferentWidth() {
ArrayDiff diff = ArrayDiff.of(first, second, 24, 2);
String expected = String.format(
"Arrays differ starting from [index: 4]:%n" +
"... 2, 3, 125, 5, 6, 7]%n" +
"... 2, 3, 4, 5, 6, 7]%n" +
" ^^^^");
"... 2, 3, 125, 5, 6, 7]%n" +
"... 2, 3, 4, 5, 6, 7]%n" +
" ^^^^");

assertFalse(diff.areEqual());
assertEquals(diff.format(), expected);
@@ -197,9 +197,9 @@ public void testBoundedFirstElementIsWrong() {
ArrayDiff diff = ArrayDiff.of(first, second, 25, 2);
String expected = String.format(
"Arrays differ starting from [index: 0]:%n" +
"[101, 102, 103, 104, ...%n" +
"[ 2]%n" +
" ^^^");
"[101, 102, 103, 104, ...%n" +
"[ 2]%n" +
" ^^^");

assertFalse(diff.areEqual());
assertEquals(diff.format(), expected);
@@ -213,9 +213,9 @@ public void testBoundedOneArchiveIsEmpty() {
ArrayDiff diff = ArrayDiff.of(first, second, 10, 2);
String expected = String.format(
"Arrays differ starting from [index: 0]:%n" +
"[a, b, ...%n" +
"[]%n" +
" ^");
"[a, b, ...%n" +
"[]%n" +
" ^");

assertFalse(diff.areEqual());
assertEquals(diff.format(), expected);
@@ -229,9 +229,9 @@ public void testUnboundedOneArchiveIsEmpty() {
ArrayDiff diff = ArrayDiff.of(first, second);
String expected = String.format(
"Arrays differ starting from [index: 0]:%n" +
"[a, b, c, d, e]%n" +
"[]%n" +
" ^");
"[a, b, c, d, e]%n" +
"[]%n" +
" ^");

assertFalse(diff.areEqual());
assertEquals(diff.format(), expected);
@@ -262,9 +262,9 @@ public void testStringElements() {
ArrayDiff diff = ArrayDiff.of(first, second);
String expected = String.format(
"Arrays differ starting from [index: 2]:%n" +
"[\"first\", \"second\", \"third\", \"u\\nprintable\"]%n" +
"[\"first\", \"second\", \"incorrect\", \"u\\nprintable\"]%n" +
" ^^^^^^^^^^^^");
"[\"first\", \"second\", \"third\", \"u\\nprintable\"]%n" +
"[\"first\", \"second\", \"incorrect\", \"u\\nprintable\"]%n" +
" ^^^^^^^^^^^^");

assertFalse(diff.areEqual());
assertEquals(diff.format(), expected);
@@ -285,9 +285,9 @@ class StrObj {
ArrayDiff diff = ArrayDiff.of(first, second);
String expected = String.format(
"Arrays differ starting from [index: 1]:%n" +
"[1, Unp\\rintable, 5]%n" +
"[1, 2, 5]%n" +
" ^^^^^^^^^^^^^");
"[1, Unp\\rintable, 5]%n" +
"[1, 2, 5]%n" +
" ^^^^^^^^^^^^^");

assertFalse(diff.areEqual());
assertEquals(diff.format(), expected);
2 changes: 1 addition & 1 deletion test/lib/jdk/test/lib/format/ArrayCodec.java
Original file line number Diff line number Diff line change
@@ -154,7 +154,7 @@ public static ArrayCodec of(Object array) {
} else if (type == String.class) {
return ArrayCodec.of((String[])array);
} else if (!type.isPrimitive() && !type.isArray()) {
return ArrayCodec.of((String[])array);
return ArrayCodec.of((Object[])array);
}

throw new IllegalArgumentException("Unsupported array component type: " + type);
4 changes: 2 additions & 2 deletions test/lib/jdk/test/lib/format/ArrayDiff.java
Original file line number Diff line number Diff line change
@@ -79,8 +79,8 @@ public class ArrayDiff<E> implements Diff {
* Default limits for the formatter
*/
public static class Defaults {
final static int WIDTH = 80;
final static int CONTEXT_BEFORE = 2;
public final static int WIDTH = 80;
public final static int CONTEXT_BEFORE = 2;
}

private ArrayDiff(ArrayCodec<E> first, ArrayCodec<E> second,