派手な構造化配列をモックする方法を見つけようとしていますが、あまり運がありません。理想的には、次のようなことをしたいと思います。
from mock import MagicMock
mock_obj = MagicMock()
mock_obj['some']['test']['structure'] = 3
assert 3 == mock_obj['some']['test']['structure']
を使用して単一の辞書をモックする方法は理解していますが、任意の、ネストされた、または関数side_effect
に対してそれを行う方法がわかりません。__getitem__
__setitem__
編集:
ここにいくつかのコンテキストがあります:
def function(self):
arr = self.my_structured_array['get']['some']['array']
#Make decisions based on return value of arr
self.my_structured_array
このようにして、他のロジックをテストするために、いくつかのジャンク値でオブジェクトを文字通りモックできます。ポイントは、ディクショナリ オブジェクトが実際には h5py ライブラリに結び付けられていることです。