blob: 5bed37a7aeb8c10b51130a90245960d6bb286312 [file] [log] [blame]
Chris Craik19832152015-04-16 15:43:38 -07001<!DOCTYPE html>
2<!--
3Copyright (c) 2015 The Chromium Authors. All rights reserved.
4Use of this source code is governed by a BSD-style license that can be
5found in the LICENSE file.
6-->
7
8<link rel="import" href="/base/deep_utils.html">
Chris Craik19832152015-04-16 15:43:38 -07009<link rel="import" href="/core/test_utils.html">
10<link rel="import" href="/core/selection.html">
Chris Craik44c28202015-05-12 17:25:16 -070011<link rel="import" href="/core/analysis/analysis_view.html">
12<link rel="import" href="/core/analysis/memory_dump_sub_view_test_utils.html">
Chris Craik19832152015-04-16 15:43:38 -070013
14<script>
15'use strict';
16
17tv.b.unittest.testSuite(function() {
Chris Craik19832152015-04-16 15:43:38 -070018 var Selection = tv.c.Selection;
Chris Craik44c28202015-05-12 17:25:16 -070019 var createTestGlobalMemoryDump = tv.c.analysis.createTestGlobalMemoryDump;
Chris Craik19832152015-04-16 15:43:38 -070020
21 test('instantiate', function() {
Chris Craik44c28202015-05-12 17:25:16 -070022 var globalMemoryDump = createTestGlobalMemoryDump();
Chris Craik19832152015-04-16 15:43:38 -070023
24 var selection = new Selection();
Chris Craik44c28202015-05-12 17:25:16 -070025 selection.push(globalMemoryDump);
Chris Craik19832152015-04-16 15:43:38 -070026
27 var viewEl = document.createElement(
28 'tv-c-single-global-memory-dump-sub-view');
29 viewEl.selection = selection;
30 this.addHTMLOutput(viewEl);
31
Chris Craik44c28202015-05-12 17:25:16 -070032 var overviewPane = tv.b.findDeepElementMatching(
33 viewEl, 'tv-c-memory-dump-overview-pane');
34 var detailsPane = tv.b.findDeepElementMatching(
35 viewEl, 'tv-c-memory-dump-details-pane');
Chris Craik19832152015-04-16 15:43:38 -070036
Chris Craik44c28202015-05-12 17:25:16 -070037 var overviewTable = tv.b.findDeepElementMatching(
38 overviewPane, 'tracing-analysis-nested-table');
39 assert.lengthOf(overviewTable.tableRows, 2);
Chris Craik19832152015-04-16 15:43:38 -070040
Chris Craik44c28202015-05-12 17:25:16 -070041 // The details pane should not contain a table (no cell selected).
42 var detailsTable = tv.b.findDeepElementMatching(
43 detailsPane, 'tracing-analysis-nested-table');
44 assert.isUndefined(detailsTable);
Chris Craik19832152015-04-16 15:43:38 -070045
Chris Craik44c28202015-05-12 17:25:16 -070046 overviewTable.selectedTableRow = overviewTable.tableRows[1];
47 overviewTable.selectedColumnIndex = 4;
Chris Craik19832152015-04-16 15:43:38 -070048
Chris Craik44c28202015-05-12 17:25:16 -070049 assert.lengthOf(overviewTable.tableRows, 2);
50
51 // The details pane should now contain a table (oilpan dump of second
52 // process selected).
53 detailsTable = tv.b.findDeepElementMatching(
54 detailsPane, 'tracing-analysis-nested-table');
55 assert.lengthOf(detailsTable.tableRows, 1);
Chris Craik19832152015-04-16 15:43:38 -070056 });
57});
58</script>