Skip to content

Commit 7da9c2b

Browse files
authored
Merge pull request #3 from wp-cli/composer-tests
Use Composer to install WP-CLI in tests
2 parents 63c3467 + 54bc0a7 commit 7da9c2b

File tree

4 files changed

+19
-36
lines changed

4 files changed

+19
-36
lines changed

.travis.yml

Lines changed: 11 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,8 @@ cache:
1717

1818
env:
1919
global:
20-
- WP_CLI_BIN_DIR=/tmp/wp-cli-phar
20+
- PATH="$TRAVIS_BUILD_DIR/vendor/bin:$PATH"
21+
- WP_CLI_BIN_DIR="$TRAVIS_BUILD_DIR/vendor/bin"
2122

2223
matrix:
2324
include:
@@ -32,9 +33,15 @@ matrix:
3233
- php: 5.3
3334
env: WP_VERSION=latest
3435

35-
before_script:
36+
before_install:
3637
- phpenv config-rm xdebug.ini
37-
- composer validate
38+
39+
install:
40+
- composer install
3841
- bash bin/install-package-tests.sh
3942

40-
script: ./vendor/bin/behat --format progress --strict
43+
before_script:
44+
- composer validate
45+
46+
script:
47+
- behat --format progress --strict

bin/install-package-tests.sh

Lines changed: 0 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -2,39 +2,9 @@
22

33
set -ex
44

5-
WP_CLI_BIN_DIR=${WP_CLI_BIN_DIR-/tmp/wp-cli-phar}
6-
7-
PACKAGE_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )"/../ && pwd )"
8-
9-
download() {
10-
if [ `which curl` ]; then
11-
curl -s "$1" > "$2";
12-
elif [ `which wget` ]; then
13-
wget -nv -O "$2" "$1"
14-
fi
15-
}
16-
17-
install_wp_cli() {
18-
19-
# the Behat test suite will pick up the executable found in $WP_CLI_BIN_DIR
20-
mkdir -p $WP_CLI_BIN_DIR
21-
download https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli-nightly.phar $WP_CLI_BIN_DIR/wp
22-
chmod +x $WP_CLI_BIN_DIR/wp
23-
24-
}
25-
26-
download_behat() {
27-
28-
cd $PACKAGE_DIR
29-
composer require --dev behat/behat='~2.5'
30-
31-
}
32-
335
install_db() {
346
mysql -e 'CREATE DATABASE IF NOT EXISTS wp_cli_test;' -uroot
357
mysql -e 'GRANT ALL PRIVILEGES ON wp_cli_test.* TO "wp_cli_test"@"localhost" IDENTIFIED BY "password1"' -uroot
368
}
379

38-
install_wp_cli
39-
download_behat
4010
install_db

composer.json

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,11 +19,16 @@
1919
"psr-4": {"": "src/"},
2020
"files": [ "db-command.php" ]
2121
},
22-
"require": {},
22+
"require": {
23+
"wp-cli/wp-cli": "dev-master"
24+
},
2325
"require-dev": {
2426
"behat/behat": "~2.5"
2527
},
2628
"extra": {
29+
"branch-alias": {
30+
"dev-master": "1.0.x-dev"
31+
},
2732
"commands": [
2833
"db create",
2934
"db drop",

features/bootstrap/FeatureContext.php

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -318,7 +318,8 @@ public function download_wp( $subdir = '' ) {
318318

319319
public function create_config( $subdir = '' ) {
320320
$params = self::$db_settings;
321-
$params['dbprefix'] = $subdir ?: 'wp_';
321+
// Replaces all characters that are not alphanumeric or an underscore into an underscore.
322+
$params['dbprefix'] = $subdir ? preg_replace( '#[^a-zA-Z\_0-9]#', '_', $subdir ) : 'wp_';
322323

323324
$params['skip-salts'] = true;
324325
$this->proc( 'wp core config', $params, $subdir )->run_check();

0 commit comments

Comments
 (0)