language: java jdk: - openjdk8 addons: apt: update: true packages: - graphviz - libalut0 - pulseaudio - tidy firefox: latest chrome: stable services: - xvfb before_install: # uncomment next line dump Travis CI environment variables into log # - set | grep '^[A-Z].*=' # ensure no unwanted defaults are set # see https://github.com/travis-ci/travis-ci/issues/4613#issuecomment-181845546 - export MAVEN_SKIP_RC="true" # install graphviz on macOS - if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then brew update ; fi - if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then brew install graphviz ; fi install: - mvn verify -DskipTests=true -Dmaven.javadoc.skip=true -B -V before_script: # start audio services - if [[ "$TRAVIS_OS_NAME" == "linux" ]]; then start-pulseaudio-x11 ; fi # silence errors from firefox about dbus. - if [[ "$TRAVIS_OS_NAME" == "linux" ]]; then dbus-launch ; fi # install Code Climate test coverage reporter - if [[ "$TRAVIS_OS_NAME" == "linux" ]]; then curl -L https://codeclimate.com/downloads/test-reporter/test-reporter-latest-linux-amd64 > ./cc-test-reporter ; fi - if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then curl -L https://codeclimate.com/downloads/test-reporter/test-reporter-latest-darwin-amd64 > ./cc-test-reporter ; fi - chmod +x ./cc-test-reporter - ./cc-test-reporter before-build script: - if [[ "$PRINT_SUMMARY" == "false" ]] ; then ./scripts/travis.sh ; else ./scripts/travis.sh ; fi cache: directories: - $HOME/.m2 os: - linux dist: bionic env: global: # false to silence most maven output; true to catch tests that do not complete - PRINT_SUMMARY=true - MAVEN_OPTS=-Xmx1536m # see http://maven.apache.org/surefire/maven-surefire-plugin/test-mojo.html#runOrder for valid values - RUN_ORDER=alphabetical - CC_TEST_REPORTER_ID=1d1326c4dfaeede878b46588cda440432d1dd6ec605d2c99af7b240ac7db0477 - SKIPINTERMITTENT=true jobs: include: - name: GUI Tests os: linux env: HEADLESS=false STATIC=false - name: Headless Tests os: linux env: HEADLESS=true STATIC=false - name: Intermittently Failing GUI Tests os: linux env: HEADLESS=false SKIPINTERMITTENT=false STATIC=true after_success: - if [[ "$TRAVIS_OS_NAME" == "linux" && "$HEADLESS" == "false" ]] ; then mvn jacoco:report coveralls:report -U -P travis-coverage ; fi - if [[ "$TRAVIS_OS_NAME" == "linux" && "$HEADLESS" == "false" ]] ; then JACOCO_SOURCE_PATH=java/src ./cc-test-reporter format-coverage target/site/jacoco/jacoco.xml --input-type jacoco ; ./cc-test-reporter upload-coverage ; fi - if [[ "$TRAVIS_OS_NAME" == "linux" && "$HEADLESS" == "false" ]] ; then bash <(curl -s https://codecov.io/bash) ; fi