Home | History | Annotate | Download | only in analysis
      1 <!DOCTYPE HTML>
      2 <html>
      3 <!--
      4 Copyright (c) 2012 The Chromium Authors. All rights reserved.
      5 Use of this source code is governed by a BSD-style license that can be
      6 found in the LICENSE file.
      7 -->
      8 <head>
      9 <title>Slice Selection Analysis Tests</title>
     10 <script src="/src/base.js"></script>
     11 </head>
     12 <body>
     13   <script>
     14     base.require('unittest');
     15     base.require('test_utils');
     16     base.require('analysis.slice_selection_analysis');
     17     base.require('analysis.test.analysis_test_support');
     18   </script>
     19   <script>
     20     'use strict';
     21 
     22     function testEmptySelection() {
     23       var selection = new tracing.Selection();
     24       var analysis = new tracing.analysis.SliceSelectionAnalysis();
     25       assertThrows(function() {
     26         analysis.selection = selection;
     27       });
     28     }
     29 
     30     function testSliceSelectionAnalysisWithMultipleSlicesSameTitle() {
     31       var data = tracing.analysis.test.createReferenceData(true);
     32 
     33       var selection = new tracing.Selection();
     34       data.t1track.selectByTitle('b', selection);
     35 
     36       var analysis = new tracing.analysis.SliceSelectionAnalysis();
     37       analysis.selection = selection;
     38 
     39       var sliceSelectionEl = analysis;
     40       var groupSliceEl = sliceSelectionEl.children[1];
     41       var headerEl = sliceSelectionEl.children[0];
     42 
     43       assertEquals(true, sliceSelectionEl instanceof
     44           tracing.analysis.SliceSelectionAnalysis);
     45       assertEquals(3, sliceSelectionEl.children.length);
     46       assertEquals(true, groupSliceEl instanceof
     47           tracing.analysis.SliceGroupSelectionAnalysis);
     48       assertEquals(1, groupSliceEl.children.length);
     49       assertEquals(3, headerEl.children.length);
     50     }
     51 
     52 
     53     function testSliceSelectionAnalysisWithMultipleSlicesSameTitle2() {
     54       var data = tracing.analysis.test.createReferenceData(true);
     55 
     56       var selection = new tracing.Selection();
     57       data.t1track.selectByTitle('b', selection);
     58 
     59       var analysis = new tracing.analysis.SliceSelectionAnalysis();
     60       analysis.selection = selection;
     61 
     62       var sliceSelectionEl = analysis;
     63       var headerEl = sliceSelectionEl.children[0];
     64       var groupSliceEl = sliceSelectionEl.children[1];
     65       var summaryEl = sliceSelectionEl.children[2];
     66 
     67       assertEquals(true,
     68           analysis instanceof tracing.analysis.SliceSelectionAnalysis);
     69       assertEquals(3, analysis.children.length);
     70       assertEquals(3, headerEl.children.length);
     71       assertEquals(1, groupSliceEl.children.length);
     72       assertEquals(3, summaryEl.children.length);
     73     }
     74 
     75     function testSliceSelectionAnalysisWithMultipleSlicesDifferentTitles() {
     76       var data = tracing.analysis.test.createReferenceData(true);
     77 
     78       var selection = new tracing.Selection();
     79       data.t1track.selectByTitle('b', selection);
     80       data.t1track.selectByTitle('c', selection);
     81       data.t1track.selectByTitle('d', selection);
     82       data.t1track.selectByTitle('e', selection);
     83       data.t1track.selectByTitle('Slice with a really, really long name.',
     84                                   selection);
     85 
     86       var analysis = new tracing.analysis.SliceSelectionAnalysis();
     87       analysis.selection = selection;
     88 
     89       var sliceSelectionEl = analysis;
     90       var groupSliceEl = sliceSelectionEl.children[1];
     91       var headerEl = sliceSelectionEl.children[0];
     92 
     93       assertEquals(true, sliceSelectionEl instanceof
     94           tracing.analysis.SliceSelectionAnalysis);
     95       assertEquals(true, groupSliceEl instanceof
     96           tracing.analysis.SliceGroupSelectionAnalysis);
     97       assertEquals(7, sliceSelectionEl.children.length);
     98       assertEquals(1, groupSliceEl.children.length);
     99       assertEquals(3, headerEl.children.length);
    100     }
    101 
    102   </script>
    103 </body>
    104 </html>
    105