Django automatically renames test databases to 'test_%s' % settings.DATABASES[*]["NAME"], so modoboa_test became test_modoboa_test. There's no point creating the database in `before script` as the test suite creates it.
https://docs.djangoproject.com/en/1.11/topics/testing/advanced/#django.db.connection.creation.create_test_db
- target oldest currently supported database servers, travis currently defaults to PostgreSQL 9.2 which isn't supported anymore.
- move database dependencies out of travis.yml into test_requirements.txt and pin to minimum versions recommended by django.
See https://docs.djangoproject.com/en/1.11/ref/databases/
- use MySQL root user for tests, we already use the root user (postgres) for PostgreSQL.
- fix typo in modoboa/test_settings for DB variable, default should be POSTGRESQL not POSTGRES
- enable MySQL strict mode (on by default on MySQL >= 5.7)
See https://docs.djangoproject.com/en/1.11/ref/databases/#mysql-sql-mode