サンプル オブジェクトをすばやく作成して比較します。
Chide の哲学は、テスト用のオブジェクトをインスタンス化するために必要なパラメーターの単純なレジストリを提供することです。また、比較とレンダリングを容易にするために、属性のマッピングまでオブジェクトを単純化する機能や、本来は表形式である複数のオブジェクトを挿入またはアサートするための形式の解析とレンダリングもサポートされています。
インスタンス化するためにそれぞれ 2 つのパラメーターを必要とする 2 つのクラスがあるとします。
from dataclasses import dataclass
@ dataclass
class ClassOne :
x : int
y : int
@ dataclass
class ClassTwo :
a : int
b : ClassOne
次のようにサンプル値のレジストリを設定できます。
from chide import Collection
samples = Collection ({
ClassOne : { 'x' : 1 , 'y' : 2 },
ClassTwo : { 'a' : 1 , 'b' : ClassOne },
})
これで、サンプル オブジェクトをすぐに作成できるようになりました。
>>> samples.make(ClassOne)
ClassOne(x=1, y=2)
必要に応じて、独自のオーバーライドを提供できます。
>>> samples.make(ClassOne, y = 3 )
ClassOne(x=1, y=3)
オブジェクトのネストされたツリーを作成することもできます。
>>> samples.make(ClassTwo)
ClassTwo(a=1, b=ClassOne(x=1, y=2))