Skip to content

Commit 9272359

Browse files
committed
Revert the inadvertent changes to the README.md file that were caused by #32
1 parent 42d91ff commit 9272359

File tree

2 files changed

+69
-2
lines changed

2 files changed

+69
-2
lines changed

.commit-readme-md

Whitespace-only changes.

README.md

Lines changed: 69 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,10 +19,11 @@ To make use of the WP-CLI testing framework, you need to complete the following
1919
2. Add the required test scripts to the `composer.json` file:
2020
```json
2121
"scripts": {
22+
"behat": "run-behat-tests",
23+
"behat-rerun": "rerun-behat-tests",
2224
"lint": "run-linter-tests",
2325
"phpcs": "run-phpcs-tests",
2426
"phpunit": "run-php-unit-tests",
25-
"behat": "run-behat-tests",
2627
"prepare-tests": "install-package-tests",
2728
"test": [
2829
"@lint",
@@ -51,7 +52,7 @@ To make use of the WP-CLI testing framework, you need to complete the following
5152
```
5253
This will make sure that the automated Behat system works across all platforms. This is needed on Windows.
5354

54-
4. Update your composer dependencies and regenerate your autoloader and binary folders:
55+
5. Update your composer dependencies and regenerate your autoloader and binary folders:
5556
```bash
5657
composer update
5758
```
@@ -80,6 +81,72 @@ Prepending with the double dash is needed because the arguments would otherwise
8081

8182
### Controlling the test environment
8283

84+
#### WordPress Version
85+
86+
You can run the tests against a specific version of WordPress by setting the `WP_VERSION` environment variable.
87+
88+
This variable understands any numeric version, as well as the special terms `latest` and `trunk`.
89+
90+
Note: This only applies to the Behat functional tests. All other tests never load WordPress.
91+
92+
Here's how to run your tests against the latest trunk version of WordPress:
93+
```bash
94+
WP_VERSION=trunk composer behat
95+
```
96+
97+
#### WP-CLI Binary
98+
99+
You can run the tests against a specific WP-CLI binary, instead of using the one that has been built in your project's `vendor/bin` folder.
100+
101+
This can be useful to run your tests against a specific Phar version of WP_CLI.
102+
103+
To do this, you can set the `WP_CLI_BIN_DIR` environment variable to point to a folder that contains an executable `wp` binary. Note: the binary has to be named `wp` to be properly recognized.
104+
105+
As an example, here's how to run your tests against a specific Phar version you've downloaded.
106+
```bash
107+
# Prepare the binary you've downloaded into the ~/wp-cli folder first.
108+
mv ~/wp-cli/wp-cli-1.2.0.phar ~/wp-cli/wp
109+
chmod +x ~/wp-cli/wp
110+
111+
WP_CLI_BIN_DIR=~/wp-cli composer behat
112+
```
113+
114+
### Setting up the tests in Travis CI
115+
116+
Basic rules for setting up the test framework with Travis CI:
117+
118+
* `composer prepare-tests` needs to be called once per environment.
119+
* `linting and sniffing` is a static analysis, so it shouldn't depend on any specific environment. You should do this only once, as a separate stage, instead of per environment.
120+
* `composer behat || composer behat-rerun` causes the Behat tests to run in their entirety first, and in case their were failed scenarios, a second run is done with only the failed scenarios. This usually gets around intermittent issues like timeouts or similar.
121+
122+
Here's a basic setup of how you can configure Travis CI to work with the test framework (extract):
123+
```yml
124+
install:
125+
- composer install
126+
- composer prepare-tests
127+
128+
script:
129+
- composer phpunit
130+
- composer behat || composer behat-rerun
131+
132+
jobs:
133+
include:
134+
- stage: sniff
135+
script:
136+
- composer lint
137+
- composer phpcs
138+
env: BUILD=sniff
139+
- stage: test
140+
php: 7.2
141+
env: WP_VERSION=latest
142+
- stage: test
143+
php: 7.2
144+
env: WP_VERSION=3.7.11
145+
- stage: test
146+
php: 7.2
147+
env: WP_VERSION=trunk
148+
```
149+
83150
#### WP-CLI version
84151
85152
You can point the tests to a specific version ow WP-CLI through the `WP_CLI_BIN_DIR` constant:

0 commit comments

Comments
 (0)