[tox]
minversion = 2.0
skipsdist = True

[testenv]
whitelist_externals = bash
                      npm
                      node
                      nodejs
                      grunt
install_command = pip install -U {opts} {packages}
setenv = VIRTUAL_ENV={envdir}
deps = nodeenv
       MySQL-python
       http://tarballs.openstack.org/storyboard/storyboard-master.tar.gz

[testenv:venv]
commands =
    bash ./bin/nodeenv.sh {envdir} 10.17.0
    npm install

[testenv:grunt]
commands =
    bash ./bin/nodeenv.sh {envdir} 10.17.0
    npm install
    bash ./bin/api.sh create-db
    bash ./bin/api.sh start
    {toxinidir}/node_modules/.bin/grunt {posargs}
    bash ./bin/api.sh stop

[testenv:grunt_no_api]
deps = nodeenv
commands =
  bash ./bin/nodeenv.sh {envdir} 10.17.0
  npm install
  npm rebuild node-sass --force
  {toxinidir}/node_modules/.bin/grunt {posargs}

[testenv:bindep]
# Do not install any requirements. We want this to be fast and work even if
# system dependencies are missing, since it's used to tell you what system
# dependencies are missing! This also means that bindep must be installed
# separately, outside of the requirements files.
deps = bindep
commands = bindep test