2017-04-07 1 views
0

私はいくつかのPython拡張機能をユニットテストしたいと思います。これを実現するために、私は、スクリプトでsetup()を実行している:テストの実行後にdistutilsセットアップコールからディストリビューションを入手

from distutils.core import setup, Extension 
import os 

DIR = os.path.dirname(__file__) 

def call_setup(): 
    module1 = Extension('callbacks', 
     sources = [os.path.join(DIR, 'callbacks.c')]) 

    setup(
     script_name = 'setup.py', 
     script_args = ['build'], 
     name = 'PackageName', 
     ext_modules = [module1]) 

クリーンアップに私はしたいテストディレクトリでビルドをジャンクを残さないようにします。 unittest tearDown()distutils.command.clean.clean()を実行したいと思います。 clean()に引数として渡さなければならないディストリビューションのdistオブジェクトを取得するにはどうすればよいですか?それはsetup()にお電話のように見えます

おかげ

答えて

1

return a Distribution instance.

Distributionコンストラクタが受け付けるキーワード引数のリストについては、setup()関数を参照してくださいする必要があります。 setup()はDistributionインスタンスを作成します。

+0

ありがとうございます、あなたの答えは正しいです。ああ、 'clean.run()'は何もしません(https://github.com/python-git/python/blob/py3k/Lib/distutils/command/clean.py)。自分自身でディレクトリを削除(または無視)してください。 – Arthur

関連する問題