| <!DOCTYPE html> |
| <!-- |
| Copyright (c) 2013 The Chromium Authors. All rights reserved. |
| Use of this source code is governed by a BSD-style license that can be |
| found in the LICENSE file. |
| --> |
| <link rel="import" href="/base/utils.html"> |
| <link rel="import" href="/base/deep_utils.html"> |
| <link rel="import" href="/core/analysis/analysis_view.html"> |
| <link rel="import" href="/extras/cc/raster_task_view.html"> |
| <link rel="import" href="/extras/cc/raster_task_selection.html"> |
| <link rel="import" href="/extras/cc/layer_tree_host_impl_view.html"> |
| <link rel="import" href="/extras/importer/trace_event_importer.html"> |
| <link rel="import" href="/core/trace_model/trace_model.html"> |
| <script src="/extras/cc/layer_tree_host_impl_test_data.js"></script> |
| <script> |
| 'use strict'; |
| |
| tv.b.unittest.testSuite(function() { |
| function createSelection() { |
| var m = new tv.c.TraceModel(g_catLTHIEvents); |
| var p = m.processes[1]; |
| var rasterTasks = p.threads[1].sliceGroup.slices.filter(function(slice) { |
| return slice.title == 'RasterTask' || slice.title == 'AnalyzeTask'; |
| }); |
| |
| var selection = new tv.c.Selection(); |
| selection.push(rasterTasks[0]); |
| selection.push(rasterTasks[1]); |
| return selection; |
| } |
| |
| test('basic', function() { |
| var selection = createSelection(); |
| var view = new RasterTaskView(); |
| view.selection = selection; |
| this.addHTMLOutput(view); |
| }); |
| |
| test('analysisViewIntegration', function() { |
| var selection = createSelection(); |
| var view = new TracingAnalysisView(); |
| view.selection = selection; |
| assert.isDefined(view.querySelector('RasterTaskView')); |
| var sv = tv.b.findDeepElementMatching( |
| view, 'tv-c-a-multi-thread-slice-sub-view'); |
| assert.isTrue(sv.requiresTallView); |
| this.addHTMLOutput(view); |
| }); |
| }); |
| </script> |