mirror of
https://gerrit.wikimedia.org/r/mediawiki/extensions/Echo
synced 2024-12-18 02:40:50 +00:00
75 lines
1.9 KiB
Makefile
75 lines
1.9 KiB
Makefile
|
MW_INSTALL_PATH ?= ../..
|
||
|
MEDIAWIKI_LOAD_URL ?= http://localhost:8080/w/load.php
|
||
|
|
||
|
# mediawiki-vagrant default to hhvm rather than php5, which is mostly
|
||
|
# fine but really slow for commands like phplint
|
||
|
PHP=/usr/bin/php5
|
||
|
|
||
|
###
|
||
|
# Meta stuff
|
||
|
###
|
||
|
|
||
|
remotes:
|
||
|
@scripts/remotecheck.sh
|
||
|
|
||
|
# code review/pull patches/etc from command line
|
||
|
gerrit: remotes
|
||
|
@scripts/remotes/gerrit.py --project 'mediawiki/extensions/Echo' --gtscore -1 --ignorepattern 'WIP'
|
||
|
|
||
|
# interactively make sure en.json and qqq.json have all the
|
||
|
# same message keys
|
||
|
message: remotes
|
||
|
@python scripts/remotes/message.py
|
||
|
|
||
|
# non-interactive version of message outputs result via exit code
|
||
|
messagecheck: remotes
|
||
|
@python scripts/remotes/message.py check
|
||
|
|
||
|
###
|
||
|
# Lints
|
||
|
###
|
||
|
lint: jshint phplint checkless messagecheck
|
||
|
|
||
|
# Verify all php in the project has valid syntax
|
||
|
phplint:
|
||
|
@find ./ -type f -iname '*.php' -print0 | xargs -0 -P 12 -L 1 ${PHP} -l
|
||
|
|
||
|
# Install nodejs dependencies for jshint
|
||
|
nodecheck:
|
||
|
@which npm > /dev/null && npm install \
|
||
|
|| (echo "You need to install Node.JS! See http://nodejs.org/" && false)
|
||
|
|
||
|
# Verify all javascript in the project has valid syntax and follows jshint rules
|
||
|
jshint: nodecheck
|
||
|
@node_modules/.bin/jshint modules/* --config .jshintrc
|
||
|
|
||
|
# Verify all less files are compilable
|
||
|
checkless:
|
||
|
@${PHP} ../../maintenance/checkLess.php
|
||
|
|
||
|
# Check compiled less files for duplicated rules
|
||
|
csscss: gems
|
||
|
echo "Generating CSS file..."
|
||
|
php scripts/generatecss.php ${MEDIAWIKI_LOAD_URL} /tmp/foo.css
|
||
|
csscss -v /tmp/foo.css --num 2 --no-match-shorthand --ignore-properties=display,position,top,bottom,left,right
|
||
|
|
||
|
###
|
||
|
# Testing
|
||
|
###
|
||
|
test: phpunit qunit
|
||
|
|
||
|
# Run the projects phpunit tests
|
||
|
phpunit:
|
||
|
cd ${MW_INSTALL_PATH}/tests/phpunit && ${PHP} phpunit.php --configuration ${MW_INSTALL_PATH}/extensions/Echo/tests/echo.suite.xml --group=Echo
|
||
|
|
||
|
# Run the projects qunit tests
|
||
|
qunit:
|
||
|
@scripts/qunit.sh
|
||
|
|
||
|
###
|
||
|
# Update this repository for csscss dependencies
|
||
|
###
|
||
|
gems:
|
||
|
bundle install
|
||
|
|