2017-08-01 2 views

Répondre

2
import sys 
if 'sphinx' not in sys.modules: 
    path, test = setup_test() 

Et puis protéger les tests qui utilisent path et test

if 'sphinx' not in sys.modules: 
    @pytest.mark.parametrize('asd', path, ids=test) 
    def test_dsf(asd): 
     runpath = os.path.dirname(asd) 
     assert runpath 

Ou attribuer des valeurs fausses de sorte que Sphinx importe le module

if 'sphinx' in sys.modules: 
    path, test = '/', 'test' 
else: 
    path, test = setup_test() 
+0

Merci pour donner un coup d'oeil à ma question. Je ne suis pas sûr si cela résout mon problème car je ne peux pas lancer 'make html' - ça me donne une erreur: 'NameError: name' chemin 'n'est pas défini' dans la ligne 8 de mon extrait quand je lance "make html" – nss

+0

J'ai mis à jour la réponse. – phd

+0

merci encore une fois, cela résout les messages d'erreur que je reçois lors de l'exécution de «make html». Cependant, le fichier .html généré ne parvient pas à imprimer le code source de test_dsf. SPHINX ne prend-il pas en charge l'appel en dehors de la fonction? Y at-il quelque chose qui me manque dans le fichier .rst L'intention derrière cette question était de m'assurer que setup_test() ne fonctionne pas sur la machine hôte quand je déclenche 'make html' – nss