diff options
Diffstat (limited to 'www/wiki/extensions/Mermaid/tests/travis')
4 files changed, 139 insertions, 0 deletions
diff --git a/www/wiki/extensions/Mermaid/tests/travis/install-mediawiki.sh b/www/wiki/extensions/Mermaid/tests/travis/install-mediawiki.sh new file mode 100644 index 00000000..0fe25fb1 --- /dev/null +++ b/www/wiki/extensions/Mermaid/tests/travis/install-mediawiki.sh @@ -0,0 +1,43 @@ +#!/bin/bash +set -ex + +cd .. + +## Use sha (master@5cc1f1d) to download a particular commit to avoid breakages +## introduced by MediaWiki core +if [[ "$MW" == *@* ]] +then + arrMw=(${MW//@/ }) + MW=${arrMw[0]} + SOURCE=${arrMw[1]} +else + MW=$MW + SOURCE=$MW +fi + +wget https://github.com/wikimedia/mediawiki/archive/$SOURCE.tar.gz -O $MW.tar.gz + +tar -zxf $MW.tar.gz +mv mediawiki-* mw + +cd mw + +## MW 1.25+ requires Psr\Logger +if [ -f composer.json ] +then + composer self-update + composer install --prefer-source +fi + +if [ "$DB" == "postgres" ] +then + # See #458 + sudo /etc/init.d/postgresql stop + sudo /etc/init.d/postgresql start + + psql -c 'create database its_a_mw;' -U postgres + php maintenance/install.php --dbtype $DB --dbuser postgres --dbname its_a_mw --pass nyan TravisWiki admin --scriptpath /TravisWiki +else + mysql -e 'create database its_a_mw;' + php maintenance/install.php --dbtype $DB --dbuser root --dbname its_a_mw --dbpath $(pwd) --pass nyan TravisWiki admin --scriptpath /TravisWiki +fi diff --git a/www/wiki/extensions/Mermaid/tests/travis/install-mermaid.sh b/www/wiki/extensions/Mermaid/tests/travis/install-mermaid.sh new file mode 100644 index 00000000..d87aa25a --- /dev/null +++ b/www/wiki/extensions/Mermaid/tests/travis/install-mermaid.sh @@ -0,0 +1,72 @@ +#!/bin/bash +set -ex + +BASE_PATH=$(pwd) +MW_INSTALL_PATH=$BASE_PATH/../mw + +# Run Composer installation from the MW root directory +function installToMediaWikiRoot { + echo -e "Running MW root composer install build on $TRAVIS_BRANCH \n" + + cd $MW_INSTALL_PATH + + if [ "$PHPUNIT" != "" ] + then + composer require 'phpunit/phpunit='$PHPUNIT --update-with-dependencies + else + composer require 'phpunit/phpunit=4.8.*' --update-with-dependencies + fi + + if [ "$MERMAID" != "" ] + then + composer require 'mediawiki/mermaid='$MERMAID --update-with-dependencies + else + composer init --stability dev + composer require "mediawiki/mermaid:dev-master" --dev --update-with-dependencies + + cd extensions + cd Mermaid + + # Pull request number, "false" if it's not a pull request + # After the install via composer an additional get fetch is carried out to + # update th repository to make sure that the latests code changes are + # deployed for testing + if [ "$TRAVIS_PULL_REQUEST" != "false" ] + then + git fetch origin +refs/pull/"$TRAVIS_PULL_REQUEST"/merge: + git checkout -qf FETCH_HEAD + else + git fetch origin "$TRAVIS_BRANCH" + git checkout -qf FETCH_HEAD + fi + + cd ../.. + fi + + # Rebuild the class map for added classes during git fetch + composer dump-autoload +} + +function updateConfiguration { + + cd $MW_INSTALL_PATH + + # Site language + if [ "$SITELANG" != "" ] + then + echo '$wgLanguageCode = "'$SITELANG'";' >> LocalSettings.php + fi + + echo 'error_reporting(E_ALL| E_STRICT);' >> LocalSettings.php + echo 'ini_set("display_errors", 1);' >> LocalSettings.php + echo '$wgShowExceptionDetails = true;' >> LocalSettings.php + echo '$wgDevelopmentWarnings = true;' >> LocalSettings.php + echo "putenv( 'MW_INSTALL_PATH=$(pwd)' );" >> LocalSettings.php + + echo "wfLoadExtension( 'Mermaid' );" >> LocalSettings.php + + php maintenance/update.php --quick +} + +installToMediaWikiRoot +updateConfiguration diff --git a/www/wiki/extensions/Mermaid/tests/travis/run-tests.sh b/www/wiki/extensions/Mermaid/tests/travis/run-tests.sh new file mode 100644 index 00000000..7f37b652 --- /dev/null +++ b/www/wiki/extensions/Mermaid/tests/travis/run-tests.sh @@ -0,0 +1,14 @@ +#! /bin/bash +set -ex + +BASE_PATH=$(pwd) +MW_INSTALL_PATH=$BASE_PATH/../mw + +cd $MW_INSTALL_PATH/extensions/Mermaid + +if [ "$TYPE" == "coverage" ] +then + composer phpunit -- --coverage-clover $BASE_PATH/build/coverage.clover +else + composer phpunit +fi diff --git a/www/wiki/extensions/Mermaid/tests/travis/upload-coverage-report.sh b/www/wiki/extensions/Mermaid/tests/travis/upload-coverage-report.sh new file mode 100644 index 00000000..aff95cf7 --- /dev/null +++ b/www/wiki/extensions/Mermaid/tests/travis/upload-coverage-report.sh @@ -0,0 +1,10 @@ +#! /bin/bash +set -ex + +BASE_PATH=$(pwd) + +if [ "$TYPE" == "coverage" ] +then + wget https://scrutinizer-ci.com/ocular.phar + php ocular.phar code-coverage:upload --format=php-clover $BASE_PATH/build/coverage.clover +fi
\ No newline at end of file |