This test runs a simple looped computation to test focusing and
exclusion functionality of profile view grid.
To use this test:
- load file in the browser;
- open DevTools (Ctrl+Shift+I on Win/Linux, Command+Option+I on Mac);
- go to 'Profiles' page;
- press 'Start profiling' button
(gray dot on the left side of status bar);
- wait for 5 seconds;
- press 'Stop profiling' button
(red dot on the left side of status bar);
On the left pane under 'CPU profiles' section, an item called
'Profile 1' must appear, and a grid with profile data must
appear on the right. Now test the following functionality in the grid:
TEST 1:
- select 'eternal_fib' function entry (without expanding it),
press 'Focus
on selected function' button (eye on the right of the status bar);
- ensure that only 'eternal_fib' function and its children are
left in the tree, and 'Total' column for the function shows
'100%' value;
- expand 'eternal_fib' function node;
- press 'Restore all functions' button;
- verify that the value in 'Total' column is less than 100%;
- verify that 'eternal_fib' function node is can still be
collapsed and expanded back;
TEST 2:
- expand two levels of 'Script:' node, select the second-level
node;
- repeat the same steps for the selected node (in this case, immediate
parent nodes of the focused node must also remain visible after
focusing);
TEST 3:
- by expanding 'Script:' node, make sure that at least 3
'eternal_fib' function nodes are visible;
- select any of 'eternal_fib' nodes and press
'Exclude selected function' (cross) button on the status bar;
- verify that all 'eternal_fib' nodes are no more visible;
- expand more 'Script:' node levels, verify that no new
'eternal_fib' nodes appear with expansion;
- press 'Restore all functions' button;
- verify that 'eternal_fib' nodes are now visible;
TESTS 4 and 5:
Now switch to 'Tree (Top Down)' view and repeat testing steps.
For the 'Exclude selected function' function test, use
'Script:' function node, as 'eternal_fib' has only
one entry in this view.