Skip to content

Commit 8cbe4b0

Browse files
committed
cpu/CPUSnapshotTest test fixed
1 parent d420936 commit 8cbe4b0

File tree

2 files changed

+22
-10
lines changed

2 files changed

+22
-10
lines changed

visualvm/libs.profiler/lib.profiler/test/qa-functional/src/org/graalvm/visualvm/lib/jfluid/tests/jfluid/cpu/CPUSnapshotTest.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,8 @@ public static Test suite() {
5858
"testThreads",
5959
"testThreadsServer",
6060
"testWaits",
61-
"testWaitsServer").enableModules(".*").clusters(".*").gui(false));
61+
"testWaitsServer")
62+
.honorAutoloadEager(true).enableModules(".*").clusters(".*").gui(false));
6263
}
6364

6465
//~ Methods ------------------------------------------------------------------------------------------------------------------

visualvm/libs.profiler/lib.profiler/test/qa-functional/src/org/graalvm/visualvm/lib/jfluid/tests/jfluid/cpu/CPUSnapshotTestCase.java

Lines changed: 20 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -183,14 +183,17 @@ protected void checkSumsOfCCTNodes(PrestimeCPUCCTNode node, String pre, double t
183183
}
184184

185185
if ((level > 1) && (node.getNChildren() > 0)) {
186-
double timediff = (Math.abs(time - node.getTotalTime0()) * 100.0) / node.getTotalTime0();
187-
double percentdiff = (Math.abs(percent - node.getTotalTime0InPerCent()) * 100.0) / node.getTotalTime0InPerCent();
188-
189-
if ((timediff > tolerance) || (percentdiff > tolerance)) {
190-
log("Node : " + node.getNodeName());
191-
log("Time diff: " + timediff + " %");
192-
log("Percent diff: " + percentdiff + " %");
193-
assertTrue("Node's and sum of subnodes values differ", false);
186+
long absDiff = Math.abs(time - node.getTotalTime0());
187+
if (absDiff > 5) {
188+
double timediff = (absDiff * 100.0) / node.getTotalTime0();
189+
double percentdiff = (Math.abs(percent - node.getTotalTime0InPerCent()) * 100.0) / node.getTotalTime0InPerCent();
190+
191+
if ((timediff > tolerance) || (percentdiff > tolerance)) {
192+
log("Node : " + node.getNodeName());
193+
log("Time diff: " + timediff + " %");
194+
log("Percent diff: " + percentdiff + " %");
195+
assertTrue("Node's and sum of subnodes values differ", false);
196+
}
194197
}
195198
}
196199
}
@@ -254,7 +257,7 @@ protected ProfilerEngineSettings initSnapshotTest(String projectName, String mai
254257
}
255258

256259
protected void refOfCCTNodes(PrestimeCPUCCTNode node, String pre, boolean time, boolean percent, boolean invocations) {
257-
ref(complete(pre + node.getNodeName(), 62)
260+
ref(complete(pre + getNodeName(node), 62)
258261
+ ((!time) ? "" : (complete(String.valueOf(node.getTotalTime0() / 1000.0), 9) + " ms "))
259262
+ ((!percent) ? "" : (complete(String.valueOf(node.getTotalTime0InPerCent()), 7) + " % "))
260263
+ ((!invocations) ? "" : complete(String.valueOf(node.getNCalls()), 3)));
@@ -357,4 +360,12 @@ protected void startSnapshotTest(ProfilerEngineSettings settings, String[] rever
357360
finalizeTest(runner);
358361
}
359362
}
363+
364+
static String getNodeName(PrestimeCPUCCTNode node) {
365+
String name = node.getNodeName();
366+
if (node.isContextCallsNode()) {
367+
return "when called from "+name; // NOI18N
368+
}
369+
return name;
370+
}
360371
}

0 commit comments

Comments
 (0)