• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# -*- python -*-
2# Crocodile config file for Chromium iOS.
3#
4# Note that Chromium iOS also uses the config file at src/build/common.croc.
5#
6# See src/tools/code_coverage/example.croc for more info on config files.
7
8{
9  # List of rules, applied in order
10  'rules' : [
11    # Specify inclusions before exclusions, since rules are in order.
12
13    # Exclude everything to negate whatever is in src/build/common.croc
14    {
15      'regexp' : '.*',
16      'include' : 0,
17    },
18
19    # Include all directories (but not the files in the directories).
20    # This is a workaround for how croc.py walks the directory tree. See the
21    # TODO in the AddFiles method of src/tools/code_coverage/croc.py
22    {
23      'regexp' : '.*/$',
24      'include' : 1,
25    },
26
27    # Include any file with an 'ios' directory in the path.
28    {
29      'regexp' : '.*/ios/.*',
30      'include' : 1,
31      'add_if_missing' : 1,
32    },
33
34    # Include any file that ends with _ios.
35    {
36      'regexp' : '.*_ios\\.(c|cc|m|mm)$',
37      'include' : 1,
38      'add_if_missing' : 1,
39    },
40
41    # Include any file that ends with _ios_unittest (and label it a test).
42    {
43      'regexp' : '.*_ios_unittest\\.(c|cc|m|mm)$',
44      'include' : 1,
45      'add_if_missing' : 1,
46      'group' : 'test',
47    },
48
49    # Don't scan for executable lines in uninstrumented header files
50    {
51      'regexp' : '.*\\.(h|hpp)$',
52      'add_if_missing' : 0,
53    },
54
55    # Don't measure coverage of perftests.
56    {
57      'regexp' : '.*perftest\\.(c|cc|m|mm)$',
58      'include' : 0,
59    },
60
61    # Languages
62    {
63      'regexp' : '.*\\.m$',
64      'language' : 'ObjC',
65    },
66    {
67      'regexp' : '.*\\.mm$',
68      'language' : 'ObjC++',
69    },
70  ],
71}
72