54 static final class TestCase1 implements TestCase {
55 private final StackWalker walker = StackWalker.getInstance(RETAIN_CLASS_REFERENCE);
56
57 private final String description = "StackWalker.getInstance(" +
58 "StackWalker.Option.RETAIN_CLASS_REFERENCE)";
59
60 // Note: line numbers and lambda hashes will be erased when
61 // comparing stack traces. However, the stack may change
62 // if some methods are being renamed in the code base.
63 // If the JDKcode base changes and the test fails because of that,
64 // then after validating that the actual stack trace obtained
65 // is indeed correct (no frames are skipped that shouldn't)
66 // then you can cut & paste the <-- actual --> stack printed in the
67 // test output in here:
68 private final String expected =
69 "1: VerifyStackTrace.lambda$test$1(VerifyStackTrace.java:209)\n" +
70 "2: VerifyStackTrace$Handle.execute(VerifyStackTrace.java:145)\n" +
71 "3: VerifyStackTrace$Handle.run(VerifyStackTrace.java:158)\n" +
72 "4: VerifyStackTrace.invoke(VerifyStackTrace.java:188)\n" +
73 "5: VerifyStackTrace$1.run(VerifyStackTrace.java:218)\n" +
74 "6: java.base/java.security.AccessController.doPrivileged(Native Method)\n" +
75 "7: VerifyStackTrace.test(VerifyStackTrace.java:227)\n" +
76 "8: VerifyStackTrace.main(VerifyStackTrace.java:182)\n";
77
78 @Override public StackWalker walker() { return walker;}
79 @Override public String description() { return description;}
80 @Override public String expected() { return expected;}
81 }
82 static final class TestCase2 implements TestCase {
83 private final StackWalker walker = StackWalker.getInstance(
84 EnumSet.of(RETAIN_CLASS_REFERENCE, SHOW_REFLECT_FRAMES));
85
86 private final String description = "nStackWalker.getInstance(" +
87 "StackWalker.Option.RETAIN_CLASS_REFERENCE, " +
88 "StackWalker.Option.SHOW_REFLECT_FRAMES)";
89
90 // Note: line numbers and lambda hashes will be erased when
91 // comparing stack traces. However, the stack may change
92 // if some methods are being renamed in the code base.
93 // If the JDK code base changes and the test fails because of that,
94 // then after validating that the actual stack trace obtained
95 // is indeed correct (no frames are skipped that shouldn't)
96 // then you can cut & paste the <-- actual --> stack printed in the
97 // test output in here (don't forget the final \n):
98 private final String expected =
99 "1: VerifyStackTrace.lambda$test$1(VerifyStackTrace.java:211)\n" +
100 "2: VerifyStackTrace$Handle.execute(VerifyStackTrace.java:147)\n" +
101 "3: VerifyStackTrace$Handle.run(VerifyStackTrace.java:160)\n" +
102 "4: VerifyStackTrace.invoke(VerifyStackTrace.java:190)\n" +
103 "5: java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)\n" +
104 "6: java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)\n" +
105 "7: java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)\n" +
106 "8: java.base/java.lang.reflect.Method.invoke(Method.java:520)\n" +
107 "9: VerifyStackTrace$1.run(VerifyStackTrace.java:220)\n" +
108 "10: java.base/java.security.AccessController.doPrivileged(Native Method)\n" +
109 "11: VerifyStackTrace.test(VerifyStackTrace.java:229)\n" +
110 "12: VerifyStackTrace.main(VerifyStackTrace.java:185)\n";
111
112 @Override public StackWalker walker() { return walker;}
113 @Override public String description() { return description;}
114 @Override public String expected() { return expected;}
115 }
116 static class TestCase3 implements TestCase {
117 private final StackWalker walker = StackWalker.getInstance(
118 EnumSet.of(RETAIN_CLASS_REFERENCE, SHOW_HIDDEN_FRAMES));
119
120 private final String description = "StackWalker.getInstance(" +
121 "StackWalker.Option.RETAIN_CLASS_REFERENCE, " +
122 "StackWalker.Option.SHOW_HIDDEN_FRAMES)";
123
124 // Note: line numbers and lambda hashes will be erased when
125 // comparing stack traces. However, the stack may change
126 // if some methods are being renamed in the code base.
127 // If the JDK code base changes and the test fails because of that,
128 // then after validating that the actual stack trace obtained
129 // is indeed correct (no frames are skipped that shouldn't)
130 // then you can cut & paste the <-- actual --> stack printed in the
131 // test output in here (don't forget the final \n):
132 private final String expected =
133 "1: VerifyStackTrace.lambda$test$1(VerifyStackTrace.java:213)\n" +
134 "2: VerifyStackTrace$$Lambda$1/0x00000007c0089430.run(Unknown Source)\n" +
135 "3: VerifyStackTrace$Handle.execute(VerifyStackTrace.java:149)\n" +
136 "4: java.base/java.lang.invoke.LambdaForm$DMH/0x00000007c008a830.invokeVirtual_LL_V(LambdaForm$DMH)\n" +
137 "5: java.base/java.lang.invoke.LambdaForm$MH/0x00000007c008a830.invoke_MT(LambdaForm$MH)\n" +
138 "6: VerifyStackTrace$Handle.run(VerifyStackTrace.java:162)\n" +
139 "7: VerifyStackTrace.invoke(VerifyStackTrace.java:192)\n" +
140 "8: java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)\n" +
141 "9: java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)\n" +
142 "10: java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)\n" +
143 "11: java.base/java.lang.reflect.Method.invoke(Method.java:520)\n" +
144 "12: VerifyStackTrace$1.run(VerifyStackTrace.java:222)\n" +
145 "13: java.base/java.security.AccessController.doPrivileged(Native Method)\n" +
146 "14: VerifyStackTrace.test(VerifyStackTrace.java:231)\n" +
147 "15: VerifyStackTrace.main(VerifyStackTrace.java:188)\n";
148
149 @Override public StackWalker walker() { return walker;}
150 @Override public String description() { return description;}
151 @Override public String expected() { return expected;}
152 }
153
154 static final class TestCase4 extends TestCase3 {
155 private final StackWalker walker = StackWalker.getInstance(
156 EnumSet.allOf(StackWalker.Option.class));
157
158 private final String description = "StackWalker.getInstance(" +
159 "StackWalker.Option.RETAIN_CLASS_REFERENCE, " +
160 "StackWalker.Option.SHOW_HIDDEN_FRAMES, " +
161 "StackWalker.Option.SHOW_REFLECT_FRAMES)";
162
163 @Override public StackWalker walker() {return walker;}
164 @Override public String description() {return description;}
165 }
166
167 public static class Handle implements Runnable {
|
54 static final class TestCase1 implements TestCase {
55 private final StackWalker walker = StackWalker.getInstance(RETAIN_CLASS_REFERENCE);
56
57 private final String description = "StackWalker.getInstance(" +
58 "StackWalker.Option.RETAIN_CLASS_REFERENCE)";
59
60 // Note: line numbers and lambda hashes will be erased when
61 // comparing stack traces. However, the stack may change
62 // if some methods are being renamed in the code base.
63 // If the JDKcode base changes and the test fails because of that,
64 // then after validating that the actual stack trace obtained
65 // is indeed correct (no frames are skipped that shouldn't)
66 // then you can cut & paste the <-- actual --> stack printed in the
67 // test output in here:
68 private final String expected =
69 "1: VerifyStackTrace.lambda$test$1(VerifyStackTrace.java:209)\n" +
70 "2: VerifyStackTrace$Handle.execute(VerifyStackTrace.java:145)\n" +
71 "3: VerifyStackTrace$Handle.run(VerifyStackTrace.java:158)\n" +
72 "4: VerifyStackTrace.invoke(VerifyStackTrace.java:188)\n" +
73 "5: VerifyStackTrace$1.run(VerifyStackTrace.java:218)\n" +
74 "6: java.base/java.security.AccessController.doPrivileged(AccessController.java:310)\n" +
75 "7: VerifyStackTrace.test(VerifyStackTrace.java:227)\n" +
76 "8: VerifyStackTrace.main(VerifyStackTrace.java:182)\n";
77
78 @Override public StackWalker walker() { return walker;}
79 @Override public String description() { return description;}
80 @Override public String expected() { return expected;}
81 }
82 static final class TestCase2 implements TestCase {
83 private final StackWalker walker = StackWalker.getInstance(
84 EnumSet.of(RETAIN_CLASS_REFERENCE, SHOW_REFLECT_FRAMES));
85
86 private final String description = "nStackWalker.getInstance(" +
87 "StackWalker.Option.RETAIN_CLASS_REFERENCE, " +
88 "StackWalker.Option.SHOW_REFLECT_FRAMES)";
89
90 // Note: line numbers and lambda hashes will be erased when
91 // comparing stack traces. However, the stack may change
92 // if some methods are being renamed in the code base.
93 // If the JDK code base changes and the test fails because of that,
94 // then after validating that the actual stack trace obtained
95 // is indeed correct (no frames are skipped that shouldn't)
96 // then you can cut & paste the <-- actual --> stack printed in the
97 // test output in here (don't forget the final \n):
98 private final String expected =
99 "1: VerifyStackTrace.lambda$test$1(VerifyStackTrace.java:211)\n" +
100 "2: VerifyStackTrace$Handle.execute(VerifyStackTrace.java:147)\n" +
101 "3: VerifyStackTrace$Handle.run(VerifyStackTrace.java:160)\n" +
102 "4: VerifyStackTrace.invoke(VerifyStackTrace.java:190)\n" +
103 "5: java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)\n" +
104 "6: java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)\n" +
105 "7: java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)\n" +
106 "8: java.base/java.lang.reflect.Method.invoke(Method.java:520)\n" +
107 "9: VerifyStackTrace$1.run(VerifyStackTrace.java:220)\n" +
108 "10: java.base/java.security.AccessController.doPrivileged(AccessController.java:310)\n" +
109 "11: VerifyStackTrace.test(VerifyStackTrace.java:229)\n" +
110 "12: VerifyStackTrace.main(VerifyStackTrace.java:185)\n";
111
112 @Override public StackWalker walker() { return walker;}
113 @Override public String description() { return description;}
114 @Override public String expected() { return expected;}
115 }
116 static class TestCase3 implements TestCase {
117 private final StackWalker walker = StackWalker.getInstance(
118 EnumSet.of(RETAIN_CLASS_REFERENCE, SHOW_HIDDEN_FRAMES));
119
120 private final String description = "StackWalker.getInstance(" +
121 "StackWalker.Option.RETAIN_CLASS_REFERENCE, " +
122 "StackWalker.Option.SHOW_HIDDEN_FRAMES)";
123
124 // Note: line numbers and lambda hashes will be erased when
125 // comparing stack traces. However, the stack may change
126 // if some methods are being renamed in the code base.
127 // If the JDK code base changes and the test fails because of that,
128 // then after validating that the actual stack trace obtained
129 // is indeed correct (no frames are skipped that shouldn't)
130 // then you can cut & paste the <-- actual --> stack printed in the
131 // test output in here (don't forget the final \n):
132 private final String expected =
133 "1: VerifyStackTrace.lambda$test$1(VerifyStackTrace.java:213)\n" +
134 "2: VerifyStackTrace$$Lambda$1/0x00000007c0089430.run(Unknown Source)\n" +
135 "3: VerifyStackTrace$Handle.execute(VerifyStackTrace.java:149)\n" +
136 "4: java.base/java.lang.invoke.LambdaForm$DMH/0x00000007c008a830.invokeVirtual_LL_V(LambdaForm$DMH)\n" +
137 "5: java.base/java.lang.invoke.LambdaForm$MH/0x00000007c008a830.invoke_MT(LambdaForm$MH)\n" +
138 "6: VerifyStackTrace$Handle.run(VerifyStackTrace.java:162)\n" +
139 "7: VerifyStackTrace.invoke(VerifyStackTrace.java:192)\n" +
140 "8: java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)\n" +
141 "9: java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)\n" +
142 "10: java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)\n" +
143 "11: java.base/java.lang.reflect.Method.invoke(Method.java:520)\n" +
144 "12: VerifyStackTrace$1.run(VerifyStackTrace.java:222)\n" +
145 "13: java.base/java.security.AccessController.executePrivileged(AccessController.java:759)\n" +
146 "14: java.base/java.security.AccessController.doPrivileged(AccessController.java:310)\n" +
147 "15: VerifyStackTrace.test(VerifyStackTrace.java:231)\n" +
148 "16: VerifyStackTrace.main(VerifyStackTrace.java:188)\n";
149
150 @Override public StackWalker walker() { return walker;}
151 @Override public String description() { return description;}
152 @Override public String expected() { return expected;}
153 }
154
155 static final class TestCase4 extends TestCase3 {
156 private final StackWalker walker = StackWalker.getInstance(
157 EnumSet.allOf(StackWalker.Option.class));
158
159 private final String description = "StackWalker.getInstance(" +
160 "StackWalker.Option.RETAIN_CLASS_REFERENCE, " +
161 "StackWalker.Option.SHOW_HIDDEN_FRAMES, " +
162 "StackWalker.Option.SHOW_REFLECT_FRAMES)";
163
164 @Override public StackWalker walker() {return walker;}
165 @Override public String description() {return description;}
166 }
167
168 public static class Handle implements Runnable {
|