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