From 5f8de423f190bbb79a62f804151bc24824fa32d8 Mon Sep 17 00:00:00 2001 From: "Matt A. Tobin" Date: Fri, 2 Feb 2018 04:16:08 -0500 Subject: Add m-esr52 at 52.6.0 --- .../shared/test/browser_flame-graph-utils-05.js | 48 ++++++++++++++++++++++ 1 file changed, 48 insertions(+) create mode 100644 devtools/client/shared/test/browser_flame-graph-utils-05.js (limited to 'devtools/client/shared/test/browser_flame-graph-utils-05.js') diff --git a/devtools/client/shared/test/browser_flame-graph-utils-05.js b/devtools/client/shared/test/browser_flame-graph-utils-05.js new file mode 100644 index 000000000..5abdd708a --- /dev/null +++ b/devtools/client/shared/test/browser_flame-graph-utils-05.js @@ -0,0 +1,48 @@ +/* Any copyright is dedicated to the Public Domain. + http://creativecommons.org/publicdomain/zero/1.0/ */ + +"use strict"; + +// Tests that flame graph data is cached, and that the cache may be cleared. + +const {FlameGraphUtils} = require("devtools/client/shared/widgets/FlameGraph"); + +add_task(function* () { + yield addTab("about:blank"); + yield performTest(); + gBrowser.removeCurrentTab(); +}); + +function* performTest() { + let out1 = FlameGraphUtils.createFlameGraphDataFromThread(TEST_DATA); + let out2 = FlameGraphUtils.createFlameGraphDataFromThread(TEST_DATA); + is(out1, out2, "The outputted data is identical."); + + let out3 = FlameGraphUtils.createFlameGraphDataFromThread( + TEST_DATA, { flattenRecursion: true } + ); + is(out2, out3, "The outputted data is still identical."); + + FlameGraphUtils.removeFromCache(TEST_DATA); + let out4 = FlameGraphUtils.createFlameGraphDataFromThread( + TEST_DATA, { flattenRecursion: true } + ); + isnot(out3, out4, "The outputted data is not identical anymore."); +} + +var TEST_DATA = synthesizeProfileForTest([{ + frames: [{ + location: "A" + }, { + location: "A" + }, { + location: "A" + }, { + location: "B", + }, { + location: "B", + }, { + location: "C" + }], + time: 50, +}]); -- cgit v1.2.3