diff --git a/.travis.yml b/.travis.yml index 659512e..9bb6fe4 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,50 +1,59 @@ language: python +python: 3.5 sudo: false cache: directories: - "~/.cache/pip" env: global: - - PIP_WHEEL_DIR=$HOME/.cache/pip/wheels - - PIP_FIND_LINKS=file://$HOME/.cache/pip/wheels + - PIP_WHEEL_DIR=$HOME/.cache/pip/wheels + - PIP_FIND_LINKS=file://$HOME/.cache/pip/wheels matrix: - - TOXENV=flake8-py27 - - TOXENV=flake8-py33 - - TOXENV=py26-dj14 - - TOXENV=py26-dj15 - - TOXENV=py26-dj16 - - TOXENV=pypy-dj14 - - TOXENV=pypy-dj15 - - TOXENV=pypy-dj16 - - TOXENV=py27-dj14 - - TOXENV=py27-dj15 - - TOXENV=py27-dj16 - - TOXENV=py27-dj17 - - TOXENV=py27-dj18 - - TOXENV=py27-dj19 - - TOXENV=py32-dj15 - - TOXENV=py32-dj16 - - TOXENV=py32-dj17 - - TOXENV=py32-dj18 - - TOXENV=py32-dj19 - - TOXENV=py33-dj15 - - TOXENV=py33-dj16 - - TOXENV=py33-dj17 - - TOXENV=py33-dj18 - - TOXENV=py33-dj19 - - TOXENV=py34-dj15 - - TOXENV=py34-dj16 - - TOXENV=py34-dj17 - - TOXENV=py34-dj18 - - TOXENV=py34-dj19 - - TOXENV=pypy-dj15 - - TOXENV=pypy-dj16 - - TOXENV=pypy-dj17 - - TOXENV=pypy-dj18 - - TOXENV=pypy-dj19 + - TOXENV=flake8-py27 + - TOXENV=flake8-py35 + - TOXENV=py26-dj14 + - TOXENV=py26-dj15 + - TOXENV=py26-dj16 + - TOXENV=pypy-dj14 + - TOXENV=pypy-dj15 + - TOXENV=pypy-dj16 + - TOXENV=py27-dj14 + - TOXENV=py27-dj15 + - TOXENV=py27-dj16 + - TOXENV=py27-dj17 + - TOXENV=py27-dj18 + - TOXENV=py27-dj19 + - TOXENV=py27-djmaster + - TOXENV=py32-dj15 + - TOXENV=py32-dj16 + - TOXENV=py32-dj17 + - TOXENV=py32-dj18 + - TOXENV=py33-dj15 + - TOXENV=py33-dj16 + - TOXENV=py33-dj17 + - TOXENV=py33-dj18 + - TOXENV=py34-dj15 + - TOXENV=py34-dj16 + - TOXENV=py34-dj17 + - TOXENV=py34-dj18 + - TOXENV=py34-dj19 + - TOXENV=py35-dj18 + - TOXENV=py35-dj19 + - TOXENV=py35-djmaster + - TOXENV=pypy-dj15 + - TOXENV=pypy-dj16 + - TOXENV=pypy-dj17 + - TOXENV=pypy-dj18 + - TOXENV=pypy-dj19 +matrix: + allow_failures: + - env: TOXENV=py27-djmaster + - env: TOXENV=py34-djmaster + - env: TOXENV=py35-djmaster + - env: TOXENV=pypy-djmaster install: -- pip wheel -r tests/requirements.txt -- pip install tox + - pip wheel -r tests/requirements.txt + - pip install tox script: tox branches: except: templates/1.5.x templates/1.6.x diff --git a/README.rst b/README.rst index 7a50c94..77d7230 100644 --- a/README.rst +++ b/README.rst @@ -1,7 +1,7 @@ django-configurations ===================== -.. image:: https://secure.travis-ci.org/jazzband/django-configurations.png +.. image:: https://travis-ci.org/jazzband/django-configurations.svg?branch=master :alt: Build Status :target: https://travis-ci.org/jazzband/django-configurations diff --git a/tests/requirements.txt b/tests/requirements.txt index e231ad5..5eb9697 100644 --- a/tests/requirements.txt +++ b/tests/requirements.txt @@ -4,5 +4,5 @@ mock dj-database-url dj-email-url dj-search-url -django-cache-url>=0.6.0 +django-cache-url>=1.0.0 six diff --git a/tests/test_values.py b/tests/test_values.py index 482799a..04987cc 100644 --- a/tests/test_values.py +++ b/tests/test_values.py @@ -407,20 +407,26 @@ class ValueTests(TestCase): def test_cache_url_value(self): cache_setting = { 'default': { - 'BACKEND': 'redis_cache.cache.RedisCache', - 'KEY_PREFIX': '', - 'LOCATION': 'host:port:1' + 'BACKEND': 'django_redis.cache.RedisCache', + 'LOCATION': 'host:6379:1' } } - cache_url = 'redis://user@host:port/1' + cache_url = 'redis://user@host:6379/1' value = CacheURLValue(cache_url) self.assertEqual(value.default, cache_setting) value = CacheURLValue() self.assertEqual(value.default, {}) - with env(CACHE_URL='redis://user@host:port/1'): + with env(CACHE_URL='redis://user@host:6379/1'): self.assertEqual(value.setup('CACHE_URL'), cache_setting) with env(CACHE_URL='wrong://user@host:port/1'): - self.assertRaises(KeyError, value.setup, 'TEST') + with self.assertRaises(Exception) as cm: + value.setup('TEST') + self.assertEqual(cm.exception.args[0], 'Unknown backend: "wrong"') + with env(CACHE_URL='redis://user@host:port/1'): + with self.assertRaises(ValueError) as cm: + value.setup('TEST') + self.assertEqual(cm.exception.args[0], + "Cannot interpret cache URL value 'redis://user@host:port/1'") def test_search_url_value(self): value = SearchURLValue() diff --git a/tox.ini b/tox.ini index f4d0f6c..e2c2e3f 100644 --- a/tox.ini +++ b/tox.ini @@ -4,10 +4,11 @@ usedevelop = True minversion = 1.8 envlist = flake8-py27, - flake8-py33, + flake8-py35, py{26,py}-dj{14,15,16}, - py27-dj{14,15,16,17,18,19}, - py{32,33,34,py}-dj{15,16,17,18,19} + py27-dj{14,15,16,17,18,19,master}, + py{32,33,34,py}-dj{15,16,17,18} + py{34,35,py}-dj{19,master} [testenv] basepython = @@ -16,6 +17,7 @@ basepython = py32: python3.2 py33: python3.3 py34: python3.4 + py35: python3.5 pypy: pypy usedevelop = true setenv = @@ -28,17 +30,28 @@ deps = dj16: https://github.com/django/django/archive/stable/1.6.x.tar.gz#egg=django dj17: https://github.com/django/django/archive/stable/1.7.x.tar.gz#egg=django dj18: https://github.com/django/django/archive/stable/1.8.x.tar.gz#egg=django - dj19: https://github.com/django/django/archive/master.tar.gz#egg=django + dj19: https://github.com/django/django/archive/stable/1.9.x.tar.gz#egg=django + djmaster: https://github.com/django/django/archive/master.tar.gz#egg=django commands = coverage run {envbindir}/django-cadmin test -v2 {posargs:tests} coverage report +# Coverage supports only Python 3.3+ for Python 3. +[testenv:py32-dj15] +commands = {envbindir}/django-cadmin test -v2 {posargs:tests} +[testenv:py32-dj16] +commands = {envbindir}/django-cadmin test -v2 {posargs:tests} +[testenv:py32-dj17] +commands = {envbindir}/django-cadmin test -v2 {posargs:tests} +[testenv:py32-dj18] +commands = {envbindir}/django-cadmin test -v2 {posargs:tests} + [testenv:flake8-py27] commands = flake8 configurations deps = flake8 -[testenv:flake8-py33] +[testenv:flake8-py35] commands = flake8 configurations deps = flake8