| <!DOCTYPE html> |
| <html> |
| <!-- |
| Copyright (c) 2012 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. |
| --> |
| <head> |
| <title>LinuxPerfSchedParser tests</title> |
| <script src="base.js"></script> |
| </head> |
| <body> |
| <script> |
| 'use strict'; |
| |
| base.require('unittest'); |
| base.require('test_utils'); |
| base.require('linux_perf_importer'); |
| |
| function testSchedSwitchRE() { |
| var re = tracing._LinuxPerfSchedParserTestExports.schedSwitchRE; |
| var x = re.exec('prev_comm=swapper prev_pid=0 prev_prio=120 prev_state=R ' + |
| '==> next_comm=SurfaceFlinger next_pid=178 next_prio=112'); |
| assertNotNull(x); |
| assertEquals('swapper', x[1]); |
| assertEquals('0', x[2]); |
| assertEquals('120', x[3]); |
| assertEquals('R', x[4]); |
| assertEquals('SurfaceFlinger', x[5]); |
| assertEquals('178', x[6]); |
| assertEquals('112', x[7]); |
| |
| var x = re.exec('prev_comm=.android.chrome prev_pid=1562 prev_prio=120 ' + |
| 'prev_state=R ==> next_comm=Binder Thread # next_pid=195 next_prio=120'); |
| assertNotNull(x); |
| assertEquals('.android.chrome', x[1]); |
| assertEquals('Binder Thread #', x[5]); |
| |
| var x = re.exec('prev_comm=Binder Thread # prev_pid=1562 prev_prio=120 ' + |
| 'prev_state=R ==> next_comm=.android.chrome next_pid=195 next_prio=120'); |
| assertNotNull(x); |
| assertEquals('Binder Thread #', x[1]); |
| assertEquals('.android.chrome', x[5]); |
| |
| // explict test for prev_state of D|W |
| var x = re.exec('prev_comm=.android.chrome prev_pid=1562 prev_prio=120 ' + |
| 'prev_state=D|W ==> next_comm=Binder Thread # next_pid=195 ' + |
| 'next_prio=120'); |
| assertNotNull(x); |
| assertEquals('D|W', x[4]); |
| } |
| |
| function testSchedWakeupRE() { |
| var re = tracing._LinuxPerfSchedParserTestExports.schedWakeupRE; |
| var x = re.exec( |
| 'comm=SensorService pid=207 prio=112 success=1 target_cpu=000'); |
| assertNotNull(x); |
| assertEquals('SensorService', x[1]); |
| assertEquals('207', x[2]); |
| assertEquals('112', x[3]); |
| assertEquals('1', x[4]); |
| assertEquals('000', x[5]); |
| } |
| |
| function testImportOneSequenceWithSchedWakeUp() { |
| // TODO(nduca): write test for this. |
| } |
| |
| </script> |
| </body> |
| </html> |