summaryrefslogtreecommitdiffstats
path: root/.scrutinizer.yml
blob: dbf9f40a6fee45d0cd73c571efe3f6cd412b8641 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
filter:
    excluded_paths:
        - 'resources/*'
        - 'test/*'
        - 'tools/*'
    dependency_paths:
        - 'vendor/*'

checks:
    php:
        fix_php_opening_tag: true
        remove_php_closing_tag: true
        avoid_closing_tag: true
        one_class_per_file: true
        side_effects_or_types: true
        no_mixed_inline_html: false
        require_braces_around_control_structures: true
        php5_style_constructor: true
        no_global_keyword: true
        avoid_usage_of_logical_operators: true
        psr2_class_declaration: true
        no_underscore_prefix_in_properties: false
        no_underscore_prefix_in_methods: false
        blank_line_after_namespace_declaration: true
        single_namespace_per_use: false
        psr2_switch_declaration: true
        psr2_control_structure_declaration: false
        avoid_superglobals: false
        security_vulnerabilities: true
        no_exit: false
        uppercase_constants: true
        return_doc_comments: true
        remove_extra_empty_lines: true
        properties_in_camelcaps: true
        prefer_while_loop_over_for_loop: true
        phpunit_assertions: true
        parameter_doc_comments: true
        optional_parameters_at_the_end: true
        no_long_variable_names:
            maximum: '20'
        no_goto: true
        function_in_camel_caps: true
        fix_use_statements:
            remove_unused: true
            preserve_multiple: false
            preserve_blanklines: false
            order_alphabetically: true
        encourage_single_quotes: true
        encourage_postdec_operator: true
        classes_in_camel_caps: true
        avoid_multiple_statements_on_same_line: true
        avoid_fixme_comments: true

    javascript:
        valid_typeof: true
        yoda:
            setting: 'Disallow Yoda Conditions'
        wrap_iife: true
        no_use_before_define: true
        no_unused_vars: true
        no_unreachable: true
        no_undef: true
        no_trailing_spaces: true
        no_space_before_semi: true
        no_shadow: true
        no_self_compare: true
        no_script_url: true
        no_return_assign: true
        no_reserved_keys: true
        no_redeclare: true
        no_mixed_spaces_and_tabs: true
        no_loop_func: true
        no_irregular_whitespace: true

coding_style:
    php:
        spaces:
            around_operators:
                concatenation: true
            ternary_operator:
                before_condition: false
                after_condition: false
                before_alternative: false
                after_alternative: false
            other:
                after_type_cast: false
        braces:
            classes_functions:
                class: new-line
                function: new-line
                closure: end-of-line
            if:
                opening: end-of-line
            for:
                opening: end-of-line
            while:
                opening: end-of-line
            do_while:
                opening: end-of-line
            switch:
                opening: end-of-line
            try:
                opening: end-of-line
        upper_lower_casing:
            keywords:
                general: lower
            constants:
                true_false_null: lower

tools:
    php_analyzer: true
    php_code_sniffer:
        config:
            standard: "PSR2"
    php_cs_fixer:
        enabled: true
        config: { level: psr2 }
    php_mess_detector: true
    php_loc:
        enabled: true
        excluded_dirs: [vendor]
    php_code_coverage:
        test_command: vendor/bin/phpunit

build:
    environment:
        timezone: "Europe/Berlin"
        php: "5.6.16"
        mysql: false
        postgresql: false
        redis: false
    dependencies:
        before:
            - sudo composer selfupdate
            - composer global require "fxp/composer-asset-plugin:~1.1"
    tests:
        override:
            -
                command: "vendor/bin/phpunit"
                coverage:
                    file: "clover.xml"
                    format: "clover"