1 // 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.
7 tvcm.require('tvcm.unittest');
8 tvcm.require('tracing.test_utils');
9 tvcm.require('tracing.filter');
11 tvcm.unittest.testSuite('tracing.filter_test', function() {
12 var TitleFilter = tracing.TitleFilter;
13 var ExactTitleFilter = tracing.ExactTitleFilter;
15 test('titleFilter', function() {
16 assertThrows(function() {
19 assertThrows(function() {
23 var s0 = tracing.test_utils.newSliceNamed('a', 1, 3);
24 assertTrue(new TitleFilter('a').matchSlice(s0));
25 assertFalse(new TitleFilter('x').matchSlice(s0));
27 var s1 = tracing.test_utils.newSliceNamed('ba', 1, 3);
28 assertTrue(new TitleFilter('a').matchSlice(s1));
29 assertTrue(new TitleFilter('ba').matchSlice(s1));
30 assertFalse(new TitleFilter('x').matchSlice(s1));
32 var s2 = tracing.test_utils.newSliceNamed('Ca', 1, 3);
33 assertTrue(new TitleFilter('A').matchSlice(s2));
34 assertTrue(new TitleFilter('cA').matchSlice(s2));
35 assertFalse(new TitleFilter('X').matchSlice(s2));
38 test('exactTitleFilter', function() {
39 assertThrows(function() {
40 new ExactTitleFilter();
42 assertThrows(function() {
43 new ExactTitleFilter('');
46 var s0 = tracing.test_utils.newSliceNamed('a', 1, 3);
47 assertTrue(new ExactTitleFilter('a').matchSlice(s0));
48 assertFalse(new ExactTitleFilter('b').matchSlice(s0));
49 assertFalse(new ExactTitleFilter('A').matchSlice(s0));
51 var s1 = tracing.test_utils.newSliceNamed('abc', 1, 3);
52 assertTrue(new ExactTitleFilter('abc').matchSlice(s1));
53 assertFalse(new ExactTitleFilter('Abc').matchSlice(s1));
54 assertFalse(new ExactTitleFilter('bc').matchSlice(s1));
55 assertFalse(new ExactTitleFilter('a').matchSlice(s1));