Skip to content

Commit 7d71f80

Browse files
Vincent PetryDeepDiver1975
authored andcommitted
Makefile improvements (#27222)
* Add make test-js-debug for continuous testing Runs karma in continuous mode which makes it possible to debug in one or multiple browsers * Add make help command
1 parent d975b52 commit 7d71f80

File tree

1 file changed

+43
-2
lines changed

1 file changed

+43
-2
lines changed

Makefile

Lines changed: 43 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -66,10 +66,44 @@ dist_dir=build/dist
6666
# Catch-all rules
6767
#
6868
.PHONY: all
69-
all: $(composer_dev_deps) $(core_vendor) $(nodejs_deps)
69+
all: help-hint $(composer_dev_deps) $(core_vendor) $(nodejs_deps)
7070

7171
.PHONY: clean
72-
clean: clean-composer-deps clean-nodejs-deps clean-js-deps clean-test-results clean-dist
72+
clean: clean-composer-deps clean-nodejs-deps clean-js-deps clean-test clean-dist
73+
74+
.PHONY: help-hint
75+
help-hint:
76+
@echo "Building core"
77+
@echo
78+
@echo "Note: You can type 'make help' for more targets"
79+
@echo
80+
81+
.PHONY: help
82+
help:
83+
@echo "Please use 'make <target>' where <target> is one of the following:"
84+
@echo
85+
@echo -e "Dependencies:\n"
86+
@echo -e "make clean\t\t\tclean everything"
87+
@echo -e "make install-composer-deps\tinstall composer dependencies"
88+
@echo -e "make update-composer\t\tupdate composer.lock"
89+
@echo -e "make install-js-deps\t\tinstall Javascript dependencies"
90+
@echo
91+
@echo -e "Note that running 'make' without arguments already installs all required dependencies"
92+
@echo
93+
@echo -e "Testing:\n"
94+
@echo -e "make test\t\t\trun all tests"
95+
@echo -e "make test-php\t\t\trun all PHP tests"
96+
@echo -e "make test-js\t\t\trun Javascript tests"
97+
@echo -e "make test-js-debug\t\trun Javascript tests in debug mode (continuous)"
98+
@echo -e "make test-integration\t\trun integration tests"
99+
@echo -e "make clean-test\t\t\tclean test results"
100+
@echo
101+
@echo It is also possible to run individual PHP test files with the following command:
102+
@echo -e "make test-php TEST_DATABASE=mysql TEST_PHP_SUITE=path/to/testfile.php"
103+
@echo
104+
@echo -e "Tools:\n"
105+
@echo -e "make update-php-license-header\tUpdate license headers"
106+
73107

74108
#
75109
# Basic required tools
@@ -150,6 +184,10 @@ test-external: $(composer_dev_deps)
150184
test-js: $(nodejs_deps) $(js_deps) $(core_vendor)
151185
NODE_PATH='$(NODE_PREFIX)/node_modules' $(KARMA) start tests/karma.config.js --single-run
152186

187+
.PHONY: test-js-debug
188+
test-js-debug: $(nodejs_deps) $(js_deps) $(core_vendor)
189+
NODE_PATH='$(NODE_PREFIX)/node_modules' $(KARMA) start tests/karma.config.js
190+
153191
.PHONY: test-integration
154192
test-integration: $(composer_dev_deps)
155193
$(MAKE) -C build/integration OC_TEST_ALT_HOME=$(OC_TEST_ALT_HOME) OC_TEST_ENCRYPTION_ENABLED=$(OC_TEST_ENCRYPTION_ENABLED)
@@ -170,6 +208,9 @@ clean-test-results:
170208
rm -Rf tests/autotest-*results*.xml
171209
$(MAKE) -C build/integration clean-test-results
172210

211+
.PHONY: clean-test
212+
clean-test: clean-test-integration clean-test-results
213+
173214
#
174215
# Documentation
175216
#

0 commit comments

Comments
 (0)