1 <html> 2 <head> 3 <title>Profiler: focusing and exclusion test</title> 4 <script type="text/javascript" src="resources/fib.js"></script> 5 </head> 6 <body onload="run_fib()"> 7 This test runs a simple looped computation to test focusing and 8 exclusion functionality of profile view grid. 9 <br> 10 <br> 11 To use this test: 12 <ul> 13 <li>load file in the browser; 14 <li>open DevTools (Ctrl+Shift+I on Win/Linux, Command+Option+I on Mac); 15 <li>go to 'Profiles' page; 16 <li>press 'Start profiling' button 17 (gray dot on the left side of status bar); 18 <li>wait for 5 seconds; 19 <li>press 'Stop profiling' button 20 (red dot on the left side of status bar); 21 </ul> 22 <br> 23 On the left pane under 'CPU profiles' section, an item called 24 'Profile 1' must appear, and a grid with profile data must 25 appear on the right. Now test the following functionality in the grid: 26 <br> 27 TEST 1: 28 <ul> 29 <li>select 'eternal_fib' function entry (without expanding it), 30 press 'Focus 31 on selected function' button (eye on the right of the status bar); 32 <li>ensure that only 'eternal_fib' function and its children are 33 left in the tree, and 'Total' column for the function shows 34 '100%' value; 35 <li>expand 'eternal_fib' function node; 36 <li>press 'Restore all functions' button; 37 <li>verify that the value in 'Total' column is less than 100%; 38 <li>verify that 'eternal_fib' function node is can still be 39 collapsed and expanded back; 40 </ul> 41 <br> 42 TEST 2: 43 <ul> 44 <li>expand two levels of 'Script:' node, select the second-level 45 node; 46 <li>repeat the same steps for the selected node (in this case, immediate 47 parent nodes of the focused node must also remain visible after 48 focusing); 49 </ul> 50 <br> 51 TEST 3: 52 <ul> 53 <li>by expanding 'Script:' node, make sure that at least 3 54 'eternal_fib' function nodes are visible; 55 <li>select any of 'eternal_fib' nodes and press 56 'Exclude selected function' (cross) button on the status bar; 57 <li>verify that all 'eternal_fib' nodes are no more visible; 58 <li>expand more 'Script:' node levels, verify that no new 59 'eternal_fib' nodes appear with expansion; 60 <li>press 'Restore all functions' button; 61 <li>verify that 'eternal_fib' nodes are now visible; 62 </ul> 63 <br> 64 TESTS 4 and 5: 65 <br> 66 Now switch to 'Tree (Top Down)' view and repeat testing steps. 67 For the 'Exclude selected function' function test, use 68 'Script:' function node, as 'eternal_fib' has only 69 one entry in this view. 70 </body> 71 </html> 72