Files
django-anymail/.travis.yml
medmunds 23800657b8 Support Python 3.6 with Django 1.11-alpha
Only real problem is in json serialization tests:
Python 3.6 [changed][1] the json serialization
error message to use the object's class name
rather than its repr. E.g.:
  "Decimal('19.99') is not JSON serializable"
becomes:
  "Object of type 'Decimal' is not JSON serializable"

Update tests that looked for specific serialization
error message to just look for the word "Decimal"
instead. (Works with all Python versions.)

[1]: https://bugs.python.org/issue26623
2017-01-22 11:34:57 -08:00

48 lines
1.9 KiB
YAML

sudo: false
language: python
matrix:
include:
# Anymail supports the same python versions as Django, excluding Python 3.2, but adding pypy.
# https://docs.djangoproject.com/en/dev/faq/install/#what-python-version-can-i-use-with-django
# Live API integration tests are only run on a few, representative Python/Django version
# combinations, to avoid rapidly consuming the testing accounts' entire send allotments.
# Django 1.8: Python 2.7, 3.2 (until the end of 2016), 3.3, 3.4, 3.5
- { env: DJANGO=django==1.8 RUN_LIVE_TESTS=true, python: 2.7 }
- { env: DJANGO=django==1.8, python: 3.3 }
- { env: DJANGO=django==1.8, python: 3.4 }
- { env: DJANGO=django==1.8, python: 3.5 }
- { env: DJANGO=django==1.8, python: pypy }
# Django 1.9: Python 2.7, 3.4, 3.5
- { env: DJANGO=django==1.9, python: 2.7 }
- { env: DJANGO=django==1.9, python: 3.4 }
- { env: DJANGO=django==1.9, python: 3.5 }
- { env: DJANGO=django==1.9, python: pypy }
# Django 1.10: Python 2.7, 3.4, 3.5
- { env: DJANGO=django==1.10, python: 2.7 }
- { env: DJANGO=django==1.10, python: 3.4 }
- { env: DJANGO=django==1.10 RUN_LIVE_TESTS=true, python: 3.5 }
- { env: DJANGO=django==1.10, python: pypy }
# Django 1.11 (prerelease): Python 2.7, 3.4, 3.5, or 3.6
- { env: DJANGO="--pre django", python: 2.7 }
- { env: DJANGO="--pre django", python: 3.4 }
- { env: DJANGO="--pre django", python: 3.5 }
- { env: DJANGO="--pre django", python: 3.6 }
- { env: DJANGO="--pre django", python: pypy }
# allow_failures:
# - env: DJANGO="--pre django"
# - python: 3.6
cache:
directories:
- $HOME/.cache/pip
install:
- pip install --upgrade setuptools pip
- pip install $DJANGO
# For now, install all ESPs and test at once
# (in future, might want to matrix ESPs to test cross-dependencies)
- pip install .[mailgun,mandrill,postmark,sendgrid,sparkpost]
- pip list
script: python setup.py test