From 34bea9da1a4b7763fcb0b8cfb9ffcff76af654ee Mon Sep 17 00:00:00 2001 From: Evan Mattson Date: Sat, 7 Jul 2018 12:12:07 +0200 Subject: [PATCH 01/10] set indent for yaml files --- .editorconfig | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.editorconfig b/.editorconfig index 779f99a..213a0f0 100644 --- a/.editorconfig +++ b/.editorconfig @@ -8,5 +8,8 @@ charset = utf-8 trim_trailing_whitespace = true insert_final_newline = true +[*.yml] +indent_size = 2 + [*.md] trim_trailing_whitespace = false From 715b949e49b9418ddb5a6e5559465a9707901b80 Mon Sep 17 00:00:00 2001 From: Evan Mattson Date: Sat, 7 Jul 2018 12:18:51 +0200 Subject: [PATCH 02/10] composer config --- composer.json | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/composer.json b/composer.json index 7c53fa9..b265387 100644 --- a/composer.json +++ b/composer.json @@ -36,5 +36,11 @@ "scripts": { "test": "phpunit", "coverage": "coveralls" + }, + "config": { + "sort-packages": true, + "platform": { + "php": "5.6.36" + } } } From 6278bf70633dd595caf9398cde7a6e9a0d17a4aa Mon Sep 17 00:00:00 2001 From: Evan Mattson Date: Sat, 7 Jul 2018 12:19:56 +0200 Subject: [PATCH 03/10] require-dev wordpress + wp-phpunit --- composer.json | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/composer.json b/composer.json index b265387..5116952 100644 --- a/composer.json +++ b/composer.json @@ -20,9 +20,11 @@ "tightenco/collect": "^5.4" }, "require-dev": { - "phpunit/phpunit": "^5.0", + "johnpbloch/wordpress": "^4.9", "mockery/mockery": "^0.9.5", - "satooshi/php-coveralls": "^1.0" + "phpunit/phpunit": "^5.0", + "satooshi/php-coveralls": "^1.0", + "wp-phpunit/wp-phpunit": "^4.9" }, "autoload": { "psr-4": {"Silk\\":"src"}, From d38e3b4e548953873d351a048efb397b3efdf7de Mon Sep 17 00:00:00 2001 From: Evan Mattson Date: Sat, 7 Jul 2018 12:21:21 +0200 Subject: [PATCH 04/10] add wp-phpunit env vars to phpunit xml --- phpunit.xml.dist | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/phpunit.xml.dist b/phpunit.xml.dist index 5e959e3..3ba28b7 100644 --- a/phpunit.xml.dist +++ b/phpunit.xml.dist @@ -19,4 +19,8 @@ src + + + + From 2f5d68e71dd5df7316c61d0a7293887ae532e126 Mon Sep 17 00:00:00 2001 From: Evan Mattson Date: Sat, 7 Jul 2018 12:21:57 +0200 Subject: [PATCH 05/10] remove install wp tests script --- tests/bin/install-wp-tests.sh | 120 ---------------------------------- 1 file changed, 120 deletions(-) delete mode 100755 tests/bin/install-wp-tests.sh diff --git a/tests/bin/install-wp-tests.sh b/tests/bin/install-wp-tests.sh deleted file mode 100755 index 5baa6cb..0000000 --- a/tests/bin/install-wp-tests.sh +++ /dev/null @@ -1,120 +0,0 @@ -#!/usr/bin/env bash - -if [ $# -lt 3 ]; then - echo "usage: $0 [db-host] [wp-version]" - exit 1 -fi - -DB_NAME=$1 -DB_USER=$2 -DB_PASS=$3 -DB_HOST=${4-localhost} -WP_VERSION=${5-latest} - -WP_TESTS_DIR=${WP_TESTS_DIR-/tmp/wordpress-tests-lib} -WP_CORE_DIR=${WP_CORE_DIR-/tmp/wordpress/} - -download() { - if [ `which curl` ]; then - curl -s "$1" > "$2"; - elif [ `which wget` ]; then - wget -nv -O "$2" "$1" - fi -} - -if [[ $WP_VERSION =~ [0-9]+\.[0-9]+(\.[0-9]+)? ]]; then - WP_TESTS_TAG="tags/$WP_VERSION" -elif [[ $WP_VERSION == 'nightly' || $WP_VERSION == 'trunk' ]]; then - WP_TESTS_TAG="trunk" -else - # http serves a single offer, whereas https serves multiple. we only want one - download http://api.wordpress.org/core/version-check/1.7/ /tmp/wp-latest.json - grep '[0-9]+\.[0-9]+(\.[0-9]+)?' /tmp/wp-latest.json - LATEST_VERSION=$(grep -o '"version":"[^"]*' /tmp/wp-latest.json | sed 's/"version":"//') - if [[ -z "$LATEST_VERSION" ]]; then - echo "Latest WordPress version could not be found" - exit 1 - fi - WP_TESTS_TAG="tags/$LATEST_VERSION" -fi - -set -ex - -install_wp() { - - if [ -d $WP_CORE_DIR ]; then - return; - fi - - mkdir -p $WP_CORE_DIR - - if [[ $WP_VERSION == 'nightly' || $WP_VERSION == 'trunk' ]]; then - mkdir -p /tmp/wordpress-nightly - download https://wordpress.org/nightly-builds/wordpress-latest.zip /tmp/wordpress-nightly/wordpress-nightly.zip - unzip -q /tmp/wordpress-nightly/wordpress-nightly.zip -d /tmp/wordpress-nightly/ - mv /tmp/wordpress-nightly/wordpress/* $WP_CORE_DIR - else - if [ $WP_VERSION == 'latest' ]; then - local ARCHIVE_NAME='latest' - else - local ARCHIVE_NAME="wordpress-$WP_VERSION" - fi - download https://wordpress.org/${ARCHIVE_NAME}.tar.gz /tmp/wordpress.tar.gz - tar --strip-components=1 -zxmf /tmp/wordpress.tar.gz -C $WP_CORE_DIR - fi - - download https://raw.github.com/markoheijnen/wp-mysqli/master/db.php $WP_CORE_DIR/wp-content/db.php -} - -install_test_suite() { - # portable in-place argument for both GNU sed and Mac OSX sed - if [[ $(uname -s) == 'Darwin' ]]; then - local ioption='-i .bak' - else - local ioption='-i' - fi - - # set up testing suite if it doesn't yet exist - if [ ! -d $WP_TESTS_DIR ]; then - # set up testing suite - mkdir -p $WP_TESTS_DIR - svn co --quiet https://develop.svn.wordpress.org/${WP_TESTS_TAG}/tests/phpunit/includes/ $WP_TESTS_DIR/includes - fi - - cd $WP_TESTS_DIR - - if [ ! -f wp-tests-config.php ]; then - download https://develop.svn.wordpress.org/${WP_TESTS_TAG}/wp-tests-config-sample.php "$WP_TESTS_DIR"/wp-tests-config.php - sed $ioption "s:dirname( __FILE__ ) . '/src/':'$WP_CORE_DIR':" "$WP_TESTS_DIR"/wp-tests-config.php - sed $ioption "s/youremptytestdbnamehere/$DB_NAME/" "$WP_TESTS_DIR"/wp-tests-config.php - sed $ioption "s/yourusernamehere/$DB_USER/" "$WP_TESTS_DIR"/wp-tests-config.php - sed $ioption "s/yourpasswordhere/$DB_PASS/" "$WP_TESTS_DIR"/wp-tests-config.php - sed $ioption "s|localhost|${DB_HOST}|" "$WP_TESTS_DIR"/wp-tests-config.php - fi - -} - -install_db() { - # parse DB_HOST for port or socket references - local PARTS=(${DB_HOST//\:/ }) - local DB_HOSTNAME=${PARTS[0]}; - local DB_SOCK_OR_PORT=${PARTS[1]}; - local EXTRA="" - - if ! [ -z $DB_HOSTNAME ] ; then - if [ $(echo $DB_SOCK_OR_PORT | grep -e '^[0-9]\{1,\}$') ]; then - EXTRA=" --host=$DB_HOSTNAME --port=$DB_SOCK_OR_PORT --protocol=tcp" - elif ! [ -z $DB_SOCK_OR_PORT ] ; then - EXTRA=" --socket=$DB_SOCK_OR_PORT" - elif ! [ -z $DB_HOSTNAME ] ; then - EXTRA=" --host=$DB_HOSTNAME --protocol=tcp" - fi - fi - - # create database - mysqladmin create $DB_NAME --user="$DB_USER" --password="$DB_PASS"$EXTRA -} - -install_wp -install_test_suite -install_db From 7e286a88830d6a38720788bf1564ca76b208f386 Mon Sep 17 00:00:00 2001 From: Evan Mattson Date: Sat, 7 Jul 2018 12:22:21 +0200 Subject: [PATCH 06/10] add wp-config for wp-phpunit --- tests/wp-config.php | 64 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 64 insertions(+) create mode 100644 tests/wp-config.php diff --git a/tests/wp-config.php b/tests/wp-config.php new file mode 100644 index 0000000..3297d3a --- /dev/null +++ b/tests/wp-config.php @@ -0,0 +1,64 @@ + Date: Sat, 7 Jul 2018 12:22:31 +0200 Subject: [PATCH 07/10] update bootstrap.php --- tests/bootstrap.php | 12 ++---------- 1 file changed, 2 insertions(+), 10 deletions(-) diff --git a/tests/bootstrap.php b/tests/bootstrap.php index e155d08..eb8fb3f 100644 --- a/tests/bootstrap.php +++ b/tests/bootstrap.php @@ -1,13 +1,5 @@ Date: Sat, 7 Jul 2018 12:23:11 +0200 Subject: [PATCH 08/10] update travis config --- .travis.yml | 69 ++++++++++++++++++++++++++++------------------------- 1 file changed, 36 insertions(+), 33 deletions(-) diff --git a/.travis.yml b/.travis.yml index 35602e6..c1723e6 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,32 +1,35 @@ language: php +env: + global: + - WP_DB_USER=wp + - WP_DB_PASS=password + - WP_DB_NAME=wp_tests + matrix: include: + - php: 7.2 + env: WP_VERSION=* + - php: 7.1 + env: WP_VERSION=* + - php: 7.0 + env: WP_VERSION=* BUILD_DOCS=1 - php: 5.6 - env: WP_VERSION=4.5.3 + env: WP_VERSION=* - php: 5.6 - env: WP_VERSION=latest - - - php: 7.0 - env: WP_VERSION=latest - - php: 7.0 - env: WP_VERSION=trunk - - - php: 7.1 - env: WP_VERSION=latest - - - php: 7.2 - env: WP_VERSION=latest + env: WP_VERSION=4.5.3 before_install: - - composer self-update --stable - - composer validate --strict + - composer validate --strict -install: composer install +install: + - composer install + - composer require --dev --update-with-dependencies johnpbloch/wordpress:$WP_VERSION wp-phpunit/wp-phpunit:$WP_VERSION before_script: - - bash tests/bin/install-wp-tests.sh wordpress_test root '' localhost $WP_VERSION - - mkdir -p build/logs + - mysql -u root -e "GRANT ALL PRIVILEGES ON ${WP_DB_NAME}.* TO ${WP_DB_USER} IDENTIFIED BY '{$WP_DB_PASS}';" + - mysql -u root -e "CREATE DATABASE {$WP_DB_NAME};" + - mkdir -p build/logs script: composer test @@ -35,24 +38,24 @@ after_success: travis_retry composer coverage -- -v before_deploy: bash build/bin/build-docs.sh deploy: - provider: s3 - access_key_id: AKIAIUOEMT3YXWAPTEJA - secret_access_key: - secure: Wqmlzs52YkR3mzmW4tvFSFincFyiJnFJvtpxsiP7wdbOqefjYiZlF5jCn6rpXvwfm3OUSFzplSDzeWUKbHjPPDkIP82Zk6jbdFPHqDurkoBdfdkIkD/X/yfQsMTDVfchRZbWaNj/+IiykuHBDkljvhbaZtepODJMIkBjkZom4Yb3pjOUARgBGy2gtI4WhaVyg4oZ1Xm0o4S6i5AUGxIZjOBfCwePhsioEZFDsaV8QVWfa7K3ttlJtpGFDLhFzB29mMVXLWbTc8I7DoEu8ghJ0bq2ilO/dRxqy3IZN7ZkLockKbg+UM4xyp/b+yQtIvmN5DMM2m3aswyz8snLqrhtKRE1QjH4/UJUunLkvn79UotXm6Vl9HTnDYG5DimsMOGxVGEuWUsY/pN0tRqPA9HGjSqOeEzgj+OjOIlUssv/E1+5+OYtpBGOnvl6tzyAffQdhdhJ+wZgOsLs9U5zRnp+t3+TAvfN6+SPmG/SQX0T7mRIZNVhICH9p/gpqjtljBJy724Xx/ZquW/tkFLB6X/M97p4OBEtX+MvwCE0L/lV2/uT2fZV3BqdYYX7fCakpWVwEA7c2pxW8VyjZf97iindxh9HQrGAu7QT3lOGyIRYsCfWgfC4yPJcMWjJZj6d5uQvVrJtMOQzVo4y9HQ9b0iXe9LYQrjdLa4xBDgLatZw2W8= - bucket: api.silk.aaemnnost.tv - acl: public_read - skip_cleanup: true - local_dir: ../silk-api-docs - on: - branch: master - php: 7.0 - condition: $WP_VERSION = latest + provider: s3 + access_key_id: AKIAIUOEMT3YXWAPTEJA + secret_access_key: + secure: Wqmlzs52YkR3mzmW4tvFSFincFyiJnFJvtpxsiP7wdbOqefjYiZlF5jCn6rpXvwfm3OUSFzplSDzeWUKbHjPPDkIP82Zk6jbdFPHqDurkoBdfdkIkD/X/yfQsMTDVfchRZbWaNj/+IiykuHBDkljvhbaZtepODJMIkBjkZom4Yb3pjOUARgBGy2gtI4WhaVyg4oZ1Xm0o4S6i5AUGxIZjOBfCwePhsioEZFDsaV8QVWfa7K3ttlJtpGFDLhFzB29mMVXLWbTc8I7DoEu8ghJ0bq2ilO/dRxqy3IZN7ZkLockKbg+UM4xyp/b+yQtIvmN5DMM2m3aswyz8snLqrhtKRE1QjH4/UJUunLkvn79UotXm6Vl9HTnDYG5DimsMOGxVGEuWUsY/pN0tRqPA9HGjSqOeEzgj+OjOIlUssv/E1+5+OYtpBGOnvl6tzyAffQdhdhJ+wZgOsLs9U5zRnp+t3+TAvfN6+SPmG/SQX0T7mRIZNVhICH9p/gpqjtljBJy724Xx/ZquW/tkFLB6X/M97p4OBEtX+MvwCE0L/lV2/uT2fZV3BqdYYX7fCakpWVwEA7c2pxW8VyjZf97iindxh9HQrGAu7QT3lOGyIRYsCfWgfC4yPJcMWjJZj6d5uQvVrJtMOQzVo4y9HQ9b0iXe9LYQrjdLa4xBDgLatZw2W8= + bucket: api.silk.aaemnnost.tv + acl: public_read + skip_cleanup: true + local_dir: ../silk-api-docs + on: + branch: master + php: 7.0 + condition: $BUILD_DOCS cache: directories: - vendor notifications: - email: - on_success: never - on_failure: change + email: + on_success: never + on_failure: change From 3c9ad4de2ed6a46c4103173454b10c1db8b13e05 Mon Sep 17 00:00:00 2001 From: Evan Mattson Date: Sat, 7 Jul 2018 12:32:00 +0200 Subject: [PATCH 09/10] fix braces --- .travis.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.travis.yml b/.travis.yml index c1723e6..083e280 100644 --- a/.travis.yml +++ b/.travis.yml @@ -27,8 +27,8 @@ install: - composer require --dev --update-with-dependencies johnpbloch/wordpress:$WP_VERSION wp-phpunit/wp-phpunit:$WP_VERSION before_script: - - mysql -u root -e "GRANT ALL PRIVILEGES ON ${WP_DB_NAME}.* TO ${WP_DB_USER} IDENTIFIED BY '{$WP_DB_PASS}';" - - mysql -u root -e "CREATE DATABASE {$WP_DB_NAME};" + - mysql -u root -e "GRANT ALL PRIVILEGES ON ${WP_DB_NAME}.* TO ${WP_DB_USER} IDENTIFIED BY '${WP_DB_PASS}';" + - mysql -u root -e "CREATE DATABASE ${WP_DB_NAME};" - mkdir -p build/logs script: composer test From a1da3bf5097cd6dd442638ed6af9e27b3ed70751 Mon Sep 17 00:00:00 2001 From: Evan Mattson Date: Sat, 7 Jul 2018 12:38:26 +0200 Subject: [PATCH 10/10] show installed dependencies after install --- .travis.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.travis.yml b/.travis.yml index 083e280..eacf0d8 100644 --- a/.travis.yml +++ b/.travis.yml @@ -25,6 +25,7 @@ before_install: install: - composer install - composer require --dev --update-with-dependencies johnpbloch/wordpress:$WP_VERSION wp-phpunit/wp-phpunit:$WP_VERSION + - composer show before_script: - mysql -u root -e "GRANT ALL PRIVILEGES ON ${WP_DB_NAME}.* TO ${WP_DB_USER} IDENTIFIED BY '${WP_DB_PASS}';"