I have tested my software, which is a Django app, locally using nose. Running python manage.py test
works as expected, but uploading my app onto travis fails.
Running in my local:
export CM_DATABASE_NAME='cm_db.sqlite3' CM_DATABASE_USERS_NAME='messenger_users_db.sqlite3' CM_DATABASE_ENGINE='django.db.backends.sqlite3' CM_DATABASE_USER='' CM_DATABASE_PASSWORD='' \
CM_DATABASE_HOST='' CM_DATABASE_PORT='' CM_DATABASE_USERS_ENGINE='django.db.backends.sqlite3'
(venv) tian@Kaji-Ryoji:~/utz/afi/afinidata-content-manager> python manage.py test
engine: django.db.backends.sqlite3
db name: cm_db.sqlite3
nosetests --verbosity=3 --with-coverage --cover-tests --cover-package=content_manager,messenger_users,posts
nose.config: INFO: Ignoring files matching ['^\\.', '^_', '^setup\\.py$']
nose.plugins.cover: INFO: Coverage report will include only packages: ['content_manager', 'messenger_users', 'posts']
Creating test database for alias 'default'...
Creating test database for alias 'messenger_users_db'...
nose.selector: INFO: /home/tian/utz/afi/afinidata-content-manager/manage.py is executable; skipped
test_creation_posts (posts.tests.PostsTest) ... ok
test_update_post (posts.tests.PostsTest) ... ok
Name Stmts Miss Cover
----------------------------------------------------------
content_manager/__init__.py 0 0 100%
content_manager/settings/__init__.py 1 1 0%
content_manager/settings/base.py 37 37 0%
messenger_users/__init__.py 0 0 100%
messenger_users/admin.py 1 1 0%
messenger_users/apps.py 3 3 0%
messenger_users/models.py 119 119 0%
messenger_users/routers.py 17 3 82%
messenger_users/tests.py 1 0 100%
posts/__init__.py 0 0 100%
posts/admin.py 6 6 0%
posts/apps.py 3 3 0%
posts/models.py 126 126 0%
posts/tests.py 21 0 100%
----------------------------------------------------------
TOTAL 335 299 11%
----------------------------------------------------------------------
Ran 2 tests in 0.197s
OK
Destroying test database for alias 'default'...
Destroying test database for alias 'messenger_users_db'...
My travis file is:
dist: xenial # required for Python >= 3.7
language: python
python:
- "3.7"
env:
- CM_DATABASE_NAME='cm_db.sqlite3' CM_DATABASE_USERS_NAME='messenger_users_db.sqlite3' CM_DATABASE_ENGINE='django.db.backends.sqlite3' CM_DATABASE_USER='' CM_DATABASE_PASSWORD='' \
CM_DATABASE_HOST='' CM_DATABASE_PORT='' CM_DATABASE_USERS_ENGINE='django.db.backends.sqlite3'
install:
- pip install -r requirements.txt
- pip install .
# command to run tests
script:
- python manage.py makemigrations && python manage.py migrate auth && python manage.py migrate --database=default && python manage.py migrate --database=messenger_users_db && python manage.py shell -c "from django.contrib.auth.models import User; User.objects.create_superuser('admin', 'admin@example.com', 'adminpass')" && python manage.py test --keepdb
# https://stackoverflow.com/questions/6244382/how-to-automate-createsuperuser-on-django
# Push the results back to codecov
after_success:
- codecov
The branch in specific is tester.
https://travis-ci.com/afinidata2019/afinidata-content-manager
Aucun commentaire:
Enregistrer un commentaire