Vous êtes ici : Accueil / Forums & ML / Forums Python / Forum général Python / Problème : utilisation de doctests dans un fichier séparé

Problème : utilisation de doctests dans un fichier séparé

Remonter à Forum général Python
  • Problème : utilisation de doctests dans un fichier séparé

    Envoyé par stephane le 17 Août 2007 à 14:47
    Bonjour,

    Je souhaite réaliser des doctests pour un petit programme. J'ai commencé par réaliser mon doctest dans la fonction à tester. Là, pas de problème le test se déroule bien.

    Maintenant, quand je place mon test dans un fichier txt séparé le test génére une erreure (voir ci-dessous). J'ai l'impression que l'importation du module ne se fait pas. Pourtant les deux fichiers sont dans le même répertoire le nom de la fonction et du module correspondent (c'est bête mais ça peut arriver...). Je pense que doctest ne va pas chercher dans le répertoire courant le module à importer, mais je me trompe peut-être.

    Je précise que je suis sous debian testing et j'utilise python 2.4. Si quelqu'un a une idée, merci d'avance.

    lancement du doctest

    if __name__ == '__main__':
    import doctest
    doctest.testfile('doctest_majcotations.txt', module_relative=True)


    Détail de l'erreure générée :

    Failed example:
    import recherche_fichiers from majcotations

    Exception raised:
    Traceback (most recent call last):
    File "doctest.py", line 1248, in __run
    compileflags, 1) in test.globs
    File "", line 1
    import recherche_fichiers from majcotations
    ^
    SyntaxError: invalid syntax
    • Re: Problème : utilisation de doctests dans un fichier séparé

      Envoyé par tarek le 17 Août 2007 à 20:36
      Bonjour,

      On peut voir le doctest ? je pense qu'il y a un problème
      de formatage. Sinon, bien vérifier qu'il y a un __init__.py dans le répertoire (mais a priori ce n'est pas cette erreur)
    • Re: Problème : utilisation de doctests dans un fichier séparé

      Envoyé par stephane le 18 Août 2007 à 14:24
      J'ai réduit le doctest à sa plus simple expression :

      >>> import majcotations

      Expression qui soulève l'erreur citée précédemment. Je pense que si l'importation se fait le reste du doctests ne posera pas de problèmes.

      J'ai mis un __init__.py dans le répertoire mais sans résultat.
    • Re: Problème : utilisation de doctests dans un fichier séparé

      Envoyé par stephane le 18 Août 2007 à 23:09
      Ca y est, j'ai trouvé la solution !

      En fait le problème ne venait pas du code (enfin pas tout à fait) mais de l'encodage de mes fichiers je travaille habituellement en UTF-8 et pour une raison que j'ignore le fichier .txt contenant les doctests était en ISO-8859-15, je pense que c'est dû à l'éditeur que j'ai utilisé (j'en ai d'ailleurs changé). J'ai fait la conversion en utf8 avec iconv et des caractéres sont "apparus" après ma close d'importation d'où l'erreur.

      Maintenant, tout fonctionne à merveille !

      Un grand merci à tarek car c'est le fait de parler de formatage qui m'a fait pensé à ça.
Rendu par Ploneboard