47 lines
No EOL
2 KiB
Markdown
47 lines
No EOL
2 KiB
Markdown
# Axione FTTH - Test d'Éligibilité
|
|
|
|
## Configuration
|
|
|
|
Ce programme se configure à l'aide du fichier ini se trouvant à `/etc/axione-elig-test.ini`. Vous pouvez utiliser `./elig-test.ini.sample` de ce dépôt git comme point de départ.
|
|
|
|
## Travailler sur l'Application Python
|
|
|
|
Nous utilisons [poetry](https://python-poetry.org/) pour gérer les dépendances python. Vous pouvez l'installer a l'aide du package manager de votre distribution. Si vous utilisez Nix, vous pouvez l'obtenir en entrant en tapant `nix-shell`.
|
|
|
|
Une fois poetry installé, vous pouvez obtenir les dépendances Python à l'aide de `poetry install`. Vous pouvez ensuite obtenir un interprêteur Python pré-configuré pour utiliser ces dépendances à l'aide de `poetry shell`.
|
|
|
|
## Jouer les Tests
|
|
|
|
Nous avons quelques tests pour le parseur. Vous pouvez les jouer à l'aide de:
|
|
|
|
```bash
|
|
$ poetry run pytest
|
|
```
|
|
|
|
## Debugger l'Application Localement
|
|
|
|
Travailler depuis la VM whitelistée par Axione est peu pratique. C'est pourquoi nous avons ajouté un mode debug permettant de simuler les réponses d'Axione.
|
|
|
|
Pour lancer la webapp localement en mode debug, vous pouvez utiliser le script `run-dev-server`:
|
|
```bash
|
|
./run-dev-server
|
|
```
|
|
### Tester la recherche d'adresses
|
|
|
|
Pour tester la recherche d'addresse il faut en local la DB sqlite contenant les infos de Fantoir et de la base de la Poste (Infos sur les communes)
|
|
|
|
Dans le fichier elig-test.ini bien renseigner le chemin en local vers cette base (champ `db_addresses_sqlite_path` dans la section `[ADDRESSES]`)
|
|
|
|
Une fois le serveur lancer comme décrit plus haut, on peut tester l'API via curl :
|
|
```bash
|
|
# Obtenir la liste de toutes les communes
|
|
curl -v http://127.0.0.1:5000/addresses/communes?s=29530
|
|
|
|
# Chercher une commune par nom
|
|
curl -v http://127.0.0.1:5000/addresses/communes?s=plonevez+du+faou
|
|
# Chercher une commune par code postal
|
|
curl -v http://127.0.0.1:5000/addresses/communes?s=29530
|
|
|
|
# Chercher les voies d'une commune via son code insee
|
|
curl -v http://127.0.0.1:5000/addresses/fantoirvoies/29036
|
|
``` |