2016-05-13 13 views
0

doctestと一緒にいくつかの関数を含むモジュールを書きましたが、同じ名前の関数に対してこれらのテストを実行したいと思います。別の関数を使ってdoctestを実行する

ドキュメントは(doctest.testmod()を実行するのと同じように)通常の方法でそれらを実行し、その後mymodulesomefunctionのためにすべてのテストを取得し、ために次のコードを提供しています。

TESTS = doctest.DocTestFinder().find(mymodule.somefunction) 
DTR = doctest.DocTestRunner(verbose=True) 
for test in TESTS: 
    print (test.name, '->', DTR.run(test)) 

をしかし、私はここからどこへ行くかわかりませんその代わりにtheirmodule.somefunctionでテストを実行してください。私はfilenameフィールドをからtheirmoduleに変更して、各テストのオブジェクトをExampleに変更しようとしましたが、役に立たなかった。誰もこれを達成する方法を知っていますか?

答えて

0

これが最もエレガントな解決策になる、単に私のスクリプトにその機能に私のドキュメンテーション文字列をコピーする作品ではない可能性があります

theirmodule.somefunction.__doc__ = mymodule.somefunction.__doc__ 

そして私は唯一theirmodule.somefunctionに私の質問にスニペットを実行する必要があります。

関連する問題