diff --git a/.travis.yml b/.travis.yml index 16cdbb35bf3a5..a02d009f85252 100644 --- a/.travis.yml +++ b/.travis.yml @@ -28,6 +28,8 @@ matrix: env: TOXENV=py36-sqlite - python: 3.6 env: TOXENV=pylint + - python: 3.6 + env: TOXENV=cypress exclude: - python: 2.7 - python: 3.6 diff --git a/superset/assets/cypress_build.sh b/superset/assets/cypress_build.sh new file mode 100755 index 0000000000000..dd80e873880a2 --- /dev/null +++ b/superset/assets/cypress_build.sh @@ -0,0 +1,16 @@ +#!/bin/bash +set -e + +superset/bin/superset db upgrade +superset/bin/superset load_test_users +superset/bin/superset load_examples +superset/bin/superset init +superset/bin/superset runserver & + +cd "$(dirname "$0")" + +npm install -g yarn +yarn +npm run build +npm run cypress run +kill %1 diff --git a/tox.ini b/tox.ini index 6ab93edf9dfa4..039075a8af8a3 100644 --- a/tox.ini +++ b/tox.ini @@ -45,6 +45,17 @@ setenv = whitelist_externals = npm +[testenv:cypress] +commands = + {toxinidir}/superset/assets/cypress_build.sh +setenv = + PYTHONPATH = {toxinidir} + SUPERSET_CONFIG = tests.superset_test_config + SUPERSET_HOME = {envtmpdir} +deps = + -rrequirements.txt + -rrequirements-dev.txt + [testenv:eslint] changedir = {toxinidir}/superset/assets commands = @@ -72,6 +83,7 @@ deps = [tox] envlist = + cypress eslint flake8 javascript