Completed
Pull Request — master (#1109)
by Abdeali
01:53
created

bears.linters.PHPLintBear.run()   A

Complexity

Conditions 1

Size

Total Lines 5

Duplication

Lines 0
Ratio 0 %
Metric Value
cc 1
dl 0
loc 5
rs 9.4286
1
import re
2
3
from coalib.bearlib.abstractions.Lint import Lint
4
from coalib.bears.LocalBear import LocalBear
5
from coalib.results.RESULT_SEVERITY import RESULT_SEVERITY
6
7
8
class PHPLintBear(LocalBear, Lint):
9
    executable = 'php'
10
    arguments = '-l -n -d display_errors=On -d log_errors=Off'
11
    output_regex = re.compile(
12
        r'(?P<severity>\S+) error: '
13
        r'(?P<message>.*) in (?P<file_name>.*) on line (?P<line>\d+)')
14
    severity_map = {
15
        "Parse": RESULT_SEVERITY.MAJOR,
16
        "Fatal": RESULT_SEVERITY.MAJOR}
17
18
    def run(self, filename, file):
19
        '''
20
        Checks the code with `php -l`. This runs it on each file separately.
21
        '''
22
        return self.lint(filename)
23