blob: 2290bae6ff07596f28df95a2262a0fef12226e1d [file] [log] [blame]
Colin Crossa4c64912014-08-18 16:10:58 -07001// Copyright (c) 2013 The Chromium Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5'use strict';
6
7base.require('tracing.test_utils');
8base.require('tracing.importer.linux_perf_importer');
9
10base.unittest.testSuite('tracing.importer.linux_perf.memreclaim_parser', function() { // @suppress longLineCheck
11 test('memreclaimImport', function() {
12 var lines = [
13 ' surfaceflinger-1155 ( 1155) [001] ...1 12839.528756: ' +
14 'mm_vmscan_direct_reclaim_begin: order=0 ' +
15 'may_writepage=1 ' +
16 'gfp_flags=GFP_KERNEL|GFP_NOWARN|GFP_ZERO|0x2',
17 ' surfaceflinger-1155 ( 1155) [001] ...1 12839.531950: ' +
18 'mm_vmscan_direct_reclaim_end: nr_reclaimed=66',
19 ' kswapd0-33 ( 33) [001] ...1 12838.491407: mm_vmscan_kswapd_wake: nid=0 order=0',
20 ' kswapd0-33 ( 33) [001] ...1 12838.529770: mm_vmscan_kswapd_wake: nid=0 order=2',
21 ' kswapd0-33 ( 33) [001] ...1 12840.545737: mm_vmscan_kswapd_sleep: nid=0',
22 ];
23 var m = new tracing.TraceModel(lines.join('\n'), false);
24 assertEquals(0, m.importErrors.length);
25
26 assertEquals(1, m.processes['1155'].threads['1155'].sliceGroup.length);
27 assertEquals(1, m.processes['33'].threads['33'].sliceGroup.length);
28 });
29});