language: python python: - 3.6 - 3.5 - 3.4 sudo: false env: matrix: - GROUP=python matrix: include: - python: 3.5 env: GROUP=js cache: pip: true directories: - ipywidgethello/jlextension/node_modules # NPM packages - ts/node_modules # NPM packages - $HOME/.npm before_install: - pip install -U pip setuptools - nvm install 6 - | if [[ $GROUP == python ]]; then pip install codecov elif [[ $GROUP == js ]]; then npm install -g codecov fi install: - | if [[ $GROUP == python ]]; then pip install --upgrade ".[test]" -v elif [[ $GROUP == js ]]; then pip install --upgrade -e ".[test]" -v fi before_script: # Set up a virtual screen for Firefox browser testing: - | if [[ $GROUP == js ]]; then export CHROME_BIN=chromium-browser export DISPLAY=:99.0 sh -e /etc/init.d/xvfb start fi git config --global user.email travis@fake.com git config --global user.name "Travis CI" script: - | if [[ $GROUP == python ]]; then EXIT_STATUS=0 pushd $(mktemp -d) py.test -l --cov-report xml:$TRAVIS_BUILD_DIR/coverage.xml --cov=ipywidgethello --pyargs ipywidgethello || EXIT_STATUS=$? popd (exit $EXIT_STATUS) elif [[ $GROUP == js ]]; then npm test fi after_success: - codecov