@@ -16,19 +16,24 @@ CCEND=\033[0m
16
16
SRC_TESTS_FILES =$(shell find src/ tests/ -type f)
17
17
COVERAGE_DIR = dist/coverage
18
18
COVERAGE_XML = $(COVERAGE_DIR ) /xml
19
+ COVERAGE_JUNIT = $(COVERAGE_DIR ) /phpunit.junit.xml
19
20
COVERAGE_HTML = $(COVERAGE_DIR ) /html
20
21
TARGET_MSI = 100
21
22
22
23
PHP_CS_FIXER_BIN = vendor-bin/php-cs-fixer/vendor/friendsofphp/php-cs-fixer/php-cs-fixer
23
24
PHP_CS_FIXER = $(PHPNOGC ) $(PHP_CS_FIXER_BIN )
25
+
24
26
PHPSTAN_BIN = vendor/phpstan/phpstan/phpstan
25
27
PHPSTAN = $(PHPSTAN_BIN )
28
+
26
29
PHPUNIT_BIN = vendor/bin/phpunit
27
30
PHPUNIT = $(PHPUNIT_BIN )
28
- PHPUNIT_COVERAGE_INFECTION = XDEBUG_MODE=coverage $(PHPUNIT ) --coverage-xml=$(COVERAGE_XML ) --log-junit=$(COVERAGE_DIR ) /phpunit.junit.xml
31
+ PHPUNIT_COVERAGE_INFECTION = XDEBUG_MODE=coverage $(PHPUNIT ) --coverage-xml=$(COVERAGE_XML ) --log-junit=$(COVERAGE_JUNIT )
29
32
PHPUNIT_COVERAGE_HTML = XDEBUG_MODE=coverage $(PHPUNIT ) --coverage-html=$(COVERAGE_HTML )
33
+
30
34
INFECTION_BIN = vendor/bin/infection
31
35
INFECTION = $(INFECTION_BIN ) --skip-initial-tests --coverage=$(COVERAGE_DIR ) --only-covered --show-mutations --min-msi=$(TARGET_MSI ) --min-covered-msi=$(TARGET_MSI ) --ansi --threads=max
36
+ INFECTION_WITH_INITIAL_TESTS = $(INFECTION_BIN ) --only-covered --show-mutations --min-msi=$(TARGET_MSI ) --min-covered-msi=$(TARGET_MSI ) --ansi --threads=max
32
37
33
38
34
39
#
@@ -92,11 +97,16 @@ phpunit_coverage_infection: $(PHPUNIT_BIN) vendor
92
97
phpunit_coverage_html : # # Runs PHPUnit with code coverage with HTML report
93
98
phpunit_coverage_html : $(PHPUNIT_BIN ) vendor
94
99
$(PHPUNIT_COVERAGE_HTML )
100
+ @echo " You can check the report by opening the file \" $( COVERAGE_HTML) /index.html\" ."
95
101
96
102
.PHONY : infection
97
103
infection : # # Runs Infection
98
- infection : $(INFECTION_BIN ) $(COVERAGE_DIR ) vendor
99
- if [ -d $( COVERAGE_XML) ]; then $( INFECTION) ; fi
104
+ infection : $(INFECTION_BIN ) vendor
105
+ $(INFECTION_WITH_INITIAL_TESTS )
106
+
107
+ .PHONY : _infection
108
+ _infection : $(INFECTION_BIN ) $(COVERAGE_XML ) $(COVERAGE_JUNIT ) vendor
109
+ $(INFECTION )
100
110
101
111
.PHONY : validate-package
102
112
validate-package : # # Validates the Composer package
@@ -140,9 +150,15 @@ $(PHPSTAN_BIN): vendor
140
150
$(PHPUNIT_BIN ) : vendor
141
151
touch -c $@
142
152
143
- $(COVERAGE_DIR ) : $(PHPUNIT_BIN ) $(SRC_TESTS_FILES ) phpunit.xml.dist
153
+ $(COVERAGE_XML ) : $(PHPUNIT_BIN ) $(SRC_TESTS_FILES ) phpunit.xml.dist
144
154
$(MAKE ) phpunit_coverage_infection
145
- touch -c " $@ "
155
+ touch -c $@
156
+ touch -c $(COVERAGE_JUNIT )
157
+
158
+ $(COVERAGE_JUNIT ) : $(PHPUNIT_BIN ) $(SRC_TESTS_FILES ) phpunit.xml.dist
159
+ $(MAKE ) phpunit_coverage_infection
160
+ touch -c $@
161
+ touch -c $(COVERAGE_XML )
146
162
147
163
$(INFECTION_BIN ) : vendor
148
164
touch -c $@
0 commit comments