Skip to content

Latest commit

 

History

History
74 lines (50 loc) · 2.4 KB

File metadata and controls

74 lines (50 loc) · 2.4 KB

Table of Contents

Python notes

installation d'un module modifié

dans le répertoire faire: `python setup.py install`

- le module sera installé dans /usr/lib/python3.4/site-packages/ - un executable sera mis/remplacé dans /usr/bin/ (un executbale n'est qu'un fichier pyhton qui indique ou trouver le module à exécuter)

installation de lib

utiliser pip : - pip search - pip install

developpement

  1. installation d'un environement de developpement
`python -m venv venv` ou `mkvirtualenv {nom de de l'env}` ou via l'utilitaire `pew` (`pip install pew`) A RE-TESTER mais non fonctionnel `pew new {nom} python=pythonX.X.X` (si besoin de spécifier la versoin de python)

  1. activation de l'environement (pour pouvoir lancer les binaires de l'env)
`source bin/activate`

  1. désactivation de l'env
`deactivate`

  1. vérification que python utilisé est bien celui de l'env
`which python`

  1. lien pour doc rapide ipdb : http://www.georgejhunt.com/olpc/pydebug/pydebug/ipdb.html

Projet trefle

  1. clonage du projet
`git clone https://framagit.org/ybon/trefle`

  1. setup
`python setup.py develop`

  1. installation des dépendances
`pip install -r requirements-dev.txt`

  1. lancement du binaire
`trefle --help` `trefle simulate --url /engager-les-demarches?a=LO%3DCuLbCGVeKYcg4TkJiTM9-ilWssy5LQ4ssllQssEO0q1K-sX1Q2mIluH6NOHSim28IdeSGyyRpo-oYyiiskGIUi3vN50KK4N8kkGLDjYqBCB%3DR6ttFu1RmB3CHsQu5v2%3DgyKJ-AaPAPbJgvIhtFbuwkpCHW2xId7iYX%3D2JJLBrA0cqJnxeCHniI3t24Yc%3DH2MUdnsPEKmDIcxWPyEABgLMWgtycPV-PskYFYKU%3D0bveevpimdV512%3DH7jcL_0cAX1TX9Whe5rdDZWQsvPPXwmj2ZDX2mKxskLLMG8e0kHwEMmDVQIANFVyZy9htf3oeBHFVnJALkO020w8lgqHgXgRG1x48lQz\n`

  1. setting de la var enc nécessaire pour l'appli
`export LBF_CHARMAP=XXXXX`

  1. lancement des tests
`py.test -vvx`

  1. test avec debug
`py.test -s`
  1. installation de la console python avec completion
`pip install ipython`

  1. pour faire des test unitaires (mock) voir : https://fgimian.github.io/blog/2014/04/10/using-the-python-mock-library-to-fake-regular-functions-during-tests/

Projet i3pystatus

Pour tester avec i3pystatus dans un environement virtuel :

  1. cloner le projet dans le répertoire src
  2. `mkvirtualenv i3pystatus`
  3. modifier le fichier `~/.config/i3/dev.py` pour le module à tester
  4. Faire pointer vers le python du virtual env dans le config de i3 : `status_command ~/.virtualenvs/i3pystatus/bin/python ~/.config/i3/status-dev.py`
Autre méthodes : enkore/i3pystatus#613