Florianschmidtwelzow has uploaded a new change for review. https://gerrit.wikimedia.org/r/142493
Change subject: Add basic tests ...................................................................... Add basic tests Use MW Code conventions. Thanks for MobileFrontend for dev-scripts :) Change-Id: I41522d4287b8c10ee0273aaa1cc0f6b078b6d9b9 --- A .gitignore A Makefile A composer.json A composer.lock A composer.phar A dev-scripts/phpcheck.sh A dev-scripts/phplint.sh A dev-scripts/pre-commit 8 files changed, 157 insertions(+), 0 deletions(-) git pull ssh://gerrit.wikimedia.org:29418/mediawiki/extensions/GoogleLogin refs/changes/93/142493/1 diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..208a599 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +vendor/* \ No newline at end of file diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..d780663 --- /dev/null +++ b/Makefile @@ -0,0 +1,10 @@ +phpcheck: + @dev-scripts/phpcheck.sh + +phplint: phpcheck + @dev-scripts/phplint.sh + +tests: phplint + +installhooks: + ln -sf ${PWD}/dev-scripts/pre-commit .git/hooks/pre-commit \ No newline at end of file diff --git a/composer.json b/composer.json new file mode 100644 index 0000000..aff630b --- /dev/null +++ b/composer.json @@ -0,0 +1,5 @@ +{ + "require-dev": { + "squizlabs/php_codesniffer": "1.*" + } +} diff --git a/composer.lock b/composer.lock new file mode 100644 index 0000000..30dd701 --- /dev/null +++ b/composer.lock @@ -0,0 +1,101 @@ +{ + "_readme": [ + "This file locks the dependencies of your project to a known state", + "Read more about it at http://getcomposer.org/doc/01-basic-usage.md#composer-lock-the-lock-file", + "This file is @generated automatically" + ], + "hash": "b6f8674efff7c052a6d1a62583adf1a4", + "packages": [ + + ], + "packages-dev": [ + { + "name": "squizlabs/php_codesniffer", + "version": "1.5.3", + "source": { + "type": "git", + "url": "https://github.com/squizlabs/PHP_CodeSniffer.git", + "reference": "396178ada8499ec492363587f037125bf7b07fcc" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/squizlabs/PHP_CodeSniffer/zipball/396178ada8499ec492363587f037125bf7b07fcc", + "reference": "396178ada8499ec492363587f037125bf7b07fcc", + "shasum": "" + }, + "require": { + "ext-tokenizer": "*", + "php": ">=5.1.2" + }, + "suggest": { + "phpunit/php-timer": "dev-master" + }, + "bin": [ + "scripts/phpcs" + ], + "type": "library", + "extra": { + "branch-alias": { + "dev-phpcs-fixer": "2.0.x-dev" + } + }, + "autoload": { + "classmap": [ + "CodeSniffer.php", + "CodeSniffer/CLI.php", + "CodeSniffer/Exception.php", + "CodeSniffer/File.php", + "CodeSniffer/Report.php", + "CodeSniffer/Reporting.php", + "CodeSniffer/Sniff.php", + "CodeSniffer/Tokens.php", + "CodeSniffer/Reports/", + "CodeSniffer/CommentParser/", + "CodeSniffer/Tokenizers/", + "CodeSniffer/DocGenerators/", + "CodeSniffer/Standards/AbstractPatternSniff.php", + "CodeSniffer/Standards/AbstractScopeSniff.php", + "CodeSniffer/Standards/AbstractVariableSniff.php", + "CodeSniffer/Standards/IncorrectPatternException.php", + "CodeSniffer/Standards/Generic/Sniffs/", + "CodeSniffer/Standards/MySource/Sniffs/", + "CodeSniffer/Standards/PEAR/Sniffs/", + "CodeSniffer/Standards/PSR1/Sniffs/", + "CodeSniffer/Standards/PSR2/Sniffs/", + "CodeSniffer/Standards/Squiz/Sniffs/", + "CodeSniffer/Standards/Zend/Sniffs/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Greg Sherwood", + "role": "lead" + } + ], + "description": "PHP_CodeSniffer tokenises PHP, JavaScript and CSS files and detects violations of a defined set of coding standards.", + "homepage": "http://www.squizlabs.com/php-codesniffer", + "keywords": [ + "phpcs", + "standards" + ], + "time": "2014-05-01 03:07:07" + } + ], + "aliases": [ + + ], + "minimum-stability": "stable", + "stability-flags": [ + + ], + "platform": [ + + ], + "platform-dev": [ + + ] +} diff --git a/composer.phar b/composer.phar new file mode 100755 index 0000000..c3711d6 --- /dev/null +++ b/composer.phar Binary files differ diff --git a/dev-scripts/phpcheck.sh b/dev-scripts/phpcheck.sh new file mode 100755 index 0000000..171db41 --- /dev/null +++ b/dev-scripts/phpcheck.sh @@ -0,0 +1,4 @@ +if [ ! -f composer.phar ]; then + curl -sS https://getcomposer.org/installer | php +fi +php composer.phar install diff --git a/dev-scripts/phplint.sh b/dev-scripts/phplint.sh new file mode 100755 index 0000000..583be01 --- /dev/null +++ b/dev-scripts/phplint.sh @@ -0,0 +1,22 @@ +command -v vendor/bin/phpcs >/dev/null 2>&1 || { echo >&2 "phpcs required but it's not installed. Aborting. Run 'make phpcheck'"; exit 1; } + +if [ -z ${MEDIAWIKI_CODESNIFFER_CONFIG_DIR+x} ] + then + echo "MEDIAWIKI_CODESNIFFER_CONFIG_DIR is unset" + echo "Please setup mediawiki/tools/codesniffer" + echo "Then add 'export MEDIAWIKI_CODESNIFFER_CONFIG_DIR=path/MediaWiki'" + exit 1 +fi + +for file in `find . -name '*.php' -not -path './admin/src/*' -not -path './admin/lib/*' -not -path './vendor/*'`; do + RESULTS=`php -l $file` + if [ "$RESULTS" != "No syntax errors detected in $file" ]; then + echo $RESULTS + exit 1 + fi + + vendor/bin/phpcs $file --standard=$MEDIAWIKI_CODESNIFFER_CONFIG_DIR + if [ $? -ne 0 ]; then + exit 1 + fi +done diff --git a/dev-scripts/pre-commit b/dev-scripts/pre-commit new file mode 100755 index 0000000..6d18ee5 --- /dev/null +++ b/dev-scripts/pre-commit @@ -0,0 +1,14 @@ +#!/usr/bin/env bash +# Enable this pre-commit hook by executing the following from the project root directory +# $ ln -s $PWD/dev-scripts/pre-commit .git/hooks/pre-commit +# Copied from Extension:MobileFrontend and edited. Thanks! + +# check for trailing whitespace +if [[ `git diff --cached --check` ]]; then + git diff --cached --check + exit 1 +fi + +if git diff --name-only --cached | grep -P '\.*php$' ; then + make phplint || exit 1 +fi \ No newline at end of file -- To view, visit https://gerrit.wikimedia.org/r/142493 To unsubscribe, visit https://gerrit.wikimedia.org/r/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I41522d4287b8c10ee0273aaa1cc0f6b078b6d9b9 Gerrit-PatchSet: 1 Gerrit-Project: mediawiki/extensions/GoogleLogin Gerrit-Branch: master Gerrit-Owner: Florianschmidtwelzow <florian.schmidt.wel...@t-online.de> _______________________________________________ MediaWiki-commits mailing list MediaWiki-commits@lists.wikimedia.org https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits