wecobble/Subtitles

View on GitHub
.magnum.yml

Summary

Maintainability
Test Coverage
# Magnum CI (MIT License) configuration file for Subtitles WordPress Plugin
# @link https://magnum-ci.com/
#
# For use with the Subtitles WordPress Plugin
# @link https://github.com/wecobble/Subtitles

install:
    - sudo apt-get update -y
    - sudo apt-get install -y php5-mysql

# Use this to prepare your build for testing.
# e.g. copy database configurations, environment variables, etc.
# Failures in this section will result in build status 'errored'.
before_script:
    # Set up WordPress installation.
    - export WP_DEVELOP_DIR=/tmp/wordpress/
    - mkdir -p $WP_DEVELOP_DIR
    # Use the Git mirror of WordPress.
    - git clone --depth=1 --branch="master" git://develop.git.wordpress.org/ $WP_DEVELOP_DIR
    # Set up Subtitles plugin information.
    - plugin_slug=$(basename $(pwd))
    - plugin_dir=$WP_DEVELOP_DIR/src/wp-content/plugins/$plugin_slug
    - echo plugin_dir
    - cd ..
    - mv $plugin_slug $plugin_dir
    # Set up WordPress configuration.
    - cd $WP_DEVELOP_DIR
    - echo $WP_DEVELOP_DIR
    - cp wp-tests-config-sample.php wp-tests-config.php
    - sed -i "s/youremptytestdbnamehere/wordpress_test/" wp-tests-config.php
    - sed -i "s/yourusernamehere/root/" wp-tests-config.php
    - sed -i "s/yourpasswordhere//" wp-tests-config.php
    # Create WordPress database.
    - mysql -e 'CREATE DATABASE wordpress_test;' -uroot
    # Install CodeSniffer for WordPress Coding Standards checks.
    - git clone https://github.com/squizlabs/PHP_CodeSniffer.git php-codesniffer
    # Install WordPress Coding Standards.
    - git clone https://github.com/WordPress-Coding-Standards/WordPress-Coding-Standards.git wordpress-coding-standards
    # Hop into CodeSniffer directory.
    - cd php-codesniffer
    # Set install path for WordPress Coding Standards
    # @link https://github.com/squizlabs/PHP_CodeSniffer/blob/4237c2fc98cc838730b76ee9cee316f99286a2a7/CodeSniffer.php#L1941
    - scripts/phpcs --config-set installed_paths ../wordpress-coding-standards
    # Hop into plugins directory.
    - cd $plugin_dir

# Run test script commands.
# Default is specific to project language.
# All commands must exit with code 0 on success. Anything else is considered failure.
script:
    # phpunit configuration file
    # @link https://github.com/sebastianbergmann/phpunit/
    - phpunit --configuration phpunit.config.xml
    # WordPress Coding Standards
    # @link https://github.com/WordPress-Coding-Standards/WordPress-Coding-Standards
    # @link http://pear.php.net/package/PHP_CodeSniffer/
    # -p flag: Show progress of the run.
    # -s flag: Show sniff codes in all reports.
    # -v flag: Print verbose output.
    # -n flag: Do not print warnings (shortcut for --warning-severity=0)
    # --standard: Use WordPress as the standard.
    # --extensions: Only sniff PHP files.
    # localhost: /Applications/XAMPP/xamppfiles/htdocs/develop/php-codesniffer/scripts/phpcs -p -s -v -n . --standard=./codesniffer.ruleset.xml --extensions=php
    - $WP_DEVELOP_DIR/php-codesniffer/scripts/phpcs -p -s -v -n . --standard=./codesniffer.ruleset.xml --extensions=php