ScoDoc/tests/api
Emmanuel Viennet 1d74d1ea60 rename env var. API_PASSWORD for API tests 2022-10-10 15:31:23 +02:00
..
README.md update to upstream master 2022-09-29 15:33:49 +02:00
__init__.py update to upstream master 2022-09-29 15:33:49 +02:00
dotenv_exemple update to upstream master 2022-09-29 15:33:49 +02:00
exemple-api-basic.py update to upstream master 2022-09-29 15:33:49 +02:00
exemple-api-scodoc7.py update to upstream master 2022-09-29 15:33:49 +02:00
make_samples.py update to upstream master 2022-09-29 15:33:49 +02:00
samples.csv update to upstream master 2022-09-29 15:33:49 +02:00
setup_test_api.py rename env var. API_PASSWORD for API tests 2022-10-10 15:31:23 +02:00
test_api_absences.py update to upstream master 2022-09-29 15:33:49 +02:00
test_api_billets.py update to upstream master 2022-09-29 15:33:49 +02:00
test_api_departements.py update to upstream master 2022-09-29 15:33:49 +02:00
test_api_etudiants.py update to upstream master 2022-09-29 15:33:49 +02:00
test_api_evaluations.py update to upstream master 2022-09-29 15:33:49 +02:00
test_api_formations.py update to upstream master 2022-09-29 15:33:49 +02:00
test_api_formsemestre.py update to upstream master 2022-09-29 15:33:49 +02:00
test_api_jury.py update to upstream master 2022-09-29 15:33:49 +02:00
test_api_logos.py update to upstream master 2022-09-29 15:33:49 +02:00
test_api_partitions.py update to upstream master 2022-09-29 15:33:49 +02:00
test_api_permissions.py update to upstream master 2022-09-29 15:33:49 +02:00
test_api_users.py update to upstream master 2022-09-29 15:33:49 +02:00
tools_test_api.py update to upstream master 2022-09-29 15:33:49 +02:00

README.md

Tests unitaires de l'API ScoDoc

Démarche générale:

  1. On génère une base SQL de test: voir tools/fakedatabase/create_test_api_database.py

    1. modifier /opt/scodoc/.env pour indiquer
    FLASK_ENV=test_api
    FLASK_DEBUG=1 
    
    1. En tant qu'utilisateur scodoc, lancer:
    tools/create_database.sh --drop SCODOC_TEST_API
    flask db upgrade
    flask sco-db-init --erase
    flask init-test-database
    

    en plus court: ``` tools/create_database.sh --drop SCODOC_TEST_API && flask db upgrade &&flask sco-db-init --erase && flask init-test-database

    
    
  2. On lance le serveur ScoDoc sur cette base

    flask run --host 0.0.0.0
    
  3. On lance les tests unitaires API

    pytest tests/api/test_api_departements.py

Rappel: pour interroger l'API, il fait avoir un utilisateur avec (au moins) la permission ScoView dans tous les départements. Pour en créer un:

 flask user-create lecteur_api LecteurAPI @all
 flask user-password lecteur_api
 flask edit-role LecteurAPI -a ScoView
 flask user-role lecteur_api -a LecteurAPI