Skip to content

Commit ba7fad4

Browse files
committed
fixing travis build
- added docker for php >= 5.4 (trusty) - added php 7.3 - updated README - added DISPLAY env and xvfb for 5.3 (precise)
1 parent 8684ee4 commit ba7fad4

File tree

4 files changed

+64
-40
lines changed

4 files changed

+64
-40
lines changed

.travis.yml

Lines changed: 41 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -1,43 +1,62 @@
11
language: php
2-
32
sudo: false
3+
dist: trusty
44

5-
cache:
6-
directories:
7-
- $HOME/.composer/cache/files
5+
services:
6+
- docker
87

9-
php: [5.4, 5.5, 5.6, 7.0, 7.1, 7.2]
8+
php:
9+
- 5.4
10+
- 5.5
11+
- 5.6
12+
- 7.0
13+
- 7.1
14+
- 7.2
15+
- 7.3
1016

1117
env:
1218
global:
13-
- WEBDRIVER=selenium
19+
- DISPLAY=:99.0
20+
21+
cache:
22+
directories:
23+
- $HOME/.composer/cache/files
1424

1525
matrix:
1626
fast_finish: true
1727
include:
18-
- php: 7.0
19-
env: WEBDRIVER=selenium-remote
20-
sudo: required
21-
services:
22-
- docker
2328
- php: 5.3
2429
dist: precise
25-
# Force using PHP 5.6 for the test server as PHP 5.3 does not have the builtin webserver
26-
env: MINK_PHP_BIN=~/.phpenv/versions/5.6/bin/php
27-
28-
before_script:
29-
- sh bin/run-"$WEBDRIVER".sh
30-
31-
- composer install
3230

33-
# Start a webserver for web fixtures.
34-
- vendor/bin/mink-test-server > /dev/null 2>&1 &
31+
install:
32+
- travis_retry composer install --no-interaction
3533

36-
script: phpunit -v --coverage-clover=coverage.clover
34+
before_script:
35+
- mkdir ./logs
36+
- |
37+
if [[ ${TRAVIS_PHP_VERSION:0:3} == "5.3" ]]; then
38+
wget http://selenium-release.storage.googleapis.com/2.53/selenium-server-standalone-2.53.1.jar
39+
sh -e /etc/init.d/xvfb start
40+
java -jar selenium-server-standalone-2.53.1.jar &> ./logs/selenium.log &
41+
else
42+
docker run -p 4444:4444 --network=host -v /dev/shm:/dev/shm --shm-size 2g selenium/standalone-firefox:2.53.1 &> ./logs/selenium.log &
43+
fi;
44+
- until $(echo | nc localhost 4444); do sleep 1; echo Waiting for Selenium server on port 4444...; done; echo "Selenium server started"
45+
# https://bugs.php.net/bug.php?id=71443
46+
- |
47+
if [[ ${TRAVIS_PHP_VERSION:0:3} == "5.3" ]]; then
48+
export MINK_PHP_BIN=~/.phpenv/versions/5.4/bin/php
49+
fi;
50+
USE_ZEND_ALLOC=0 travis_retry ${MINK_PHP_BIN-php} -d memory_limit=8G -S localhost:8002 -t ./vendor/mink/driver-testsuite/web-fixtures &> ./logs/mink-test-server.log &
51+
- until $(echo | nc localhost 8002); do sleep 1; echo waiting for PHP server on port 8002...; done; echo "PHP server started"
52+
53+
script:
54+
- phpunit -v --coverage-clover=coverage.clover
3755

3856
after_script:
3957
- wget https://scrutinizer-ci.com/ocular.phar
4058
- php ocular.phar code-coverage:upload --format=php-clover coverage.clover
4159

4260
after_failure:
43-
- cat /tmp/webdriver_output.txt
61+
- cat ./logs/selenium.log
62+
- cat ./logs/mink-test-server.log

README.md

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,29 @@ $> curl -sS http://getcomposer.org/installer | php
4949
$> php composer.phar install
5050
```
5151

52+
Testing
53+
------------
54+
55+
1. Start WebDriver
56+
1. If you have Docker installed, run
57+
```bash
58+
docker run -p 4444:4444 selenium/standalone-firefox:2.53.1
59+
```
60+
2. If you do not have Docker, but you have Java
61+
```bash
62+
curl -L http://selenium-release.storage.googleapis.com/2.53/selenium-server-standalone-2.53.1.jar > selenium-server-standalone-2.53.1.jar
63+
java -jar selenium-server-standalone-2.53.1.jar
64+
```
65+
2. Start WebServer by running
66+
``` bash
67+
php -S localhost:8002 -t ./vendor/mink/driver-testsuite/web-fixtures
68+
```
69+
3. Start PhpUnit
70+
```bash
71+
composer require --dev phpunit/phpunit
72+
./vendor/bin/phpunit -v --coverage-clover=coverage.clover
73+
```
74+
5275
Copyright
5376
---------
5477

bin/run-selenium-remote.sh

Lines changed: 0 additions & 7 deletions
This file was deleted.

bin/run-selenium.sh

Lines changed: 0 additions & 11 deletions
This file was deleted.

0 commit comments

Comments
 (0)