Ghost/.travis.yml
Kevin Ansfield a4f70b55fc Test client using real browsers on Travis
no issue
- drop phantomjs tests both locally and on Travis
- instruct Travis to install latest Chrome and Firefox
- start an X server when running the client tests on Travis
- update testem config to start Chrome and Firefox in both local and CI tests
- fix testing preview sizing in Firefox as it doesn't support `zoom: 50%` style
- improve infinite scroll testing to be more reliable
- fix post acceptance test to handle both mobile and desktop views
2016-02-08 16:10:40 +00:00

55 lines
1.5 KiB
YAML

language: node_js
# When changing node version also update it on lines 26, 28 and 38.
node_js:
- "0.10"
- "0.12"
- "4.2"
sudo: false
cache:
directories:
- node_modules
- core/client/node_modules
- core/client/bower_components
addons:
firefox: "latest"
postgresql: "9.3"
apt:
sources:
- google-chrome
packages:
- google-chrome-stable
env:
global:
- GITHUB_OAUTH_KEY=003a44d58f12089d0c0261338298af3813330949
- GHOST_NODE_VERSION_CHECK=false
- TEST_SUITE=server
matrix:
- DB=sqlite3 NODE_ENV=testing
- DB=mysql NODE_ENV=testing-mysql
- DB=pg NODE_ENV=testing-pg
matrix:
include:
- node_js: "0.10"
env: TEST_SUITE=client
- node_js: "0.10"
env: TEST_SUITE=lint
before_install:
- if [ $DB == "mysql" ]; then mysql -e 'create database ghost_testing'; fi
- if [ $DB == "pg" ]; then psql -c 'create database ghost_testing;' -U postgres; fi
before_script:
- if [ $TEST_SUITE == "client" ]; then export DISPLAY=:99; sh -e /etc/init.d/xvfb start; sleep 3; fi
after_success:
- |
if [ "$TRAVIS_PULL_REQUEST" = "false" ]; then
if [[ "$DB" = "sqlite3" && "$TRAVIS_NODE_VERSION" = "0.10" ]]; then
echo "Generate coverage..."
grunt coverage
npm install -g codeclimate-test-reporter
codeclimate-test-reporter < core/test/coverage/unit/lcov.info
else
echo "False DB and NODE_VERSION. No coverage generated."
fi
else
echo "This is a PR. No coverage generated."
fi