Créez et comparez rapidement des exemples d’objets.
La philosophie de Chide est de vous fournir un registre simple de paramètres nécessaires pour instancier des objets pour vos tests. Il existe également un support pour simplifier les objets jusqu'aux mappages de leurs attributs pour une comparaison et un rendu plus faciles, ainsi que pour l'analyse et le rendu des formats pour l'insertion ou l'affirmation sur plusieurs objets naturellement tabulaires.
Supposons que nous ayons deux classes qui nécessitent chacune deux paramètres pour être instanciées :
from dataclasses import dataclass
@ dataclass
class ClassOne :
x : int
y : int
@ dataclass
class ClassTwo :
a : int
b : ClassOne
Nous pouvons configurer un registre d’exemples de valeurs comme suit :
from chide import Collection
samples = Collection ({
ClassOne : { 'x' : 1 , 'y' : 2 },
ClassTwo : { 'a' : 1 , 'b' : ClassOne },
})
Nous pouvons maintenant créer rapidement des exemples d'objets :
>>> samples.make(ClassOne)
ClassOne(x=1, y=2)
Nous pouvons fournir nos propres remplacements si nous voulons :
>>> samples.make(ClassOne, y = 3 )
ClassOne(x=1, y=3)
Nous pouvons également créer des arbres d'objets imbriqués :
>>> samples.make(ClassTwo)
ClassTwo(a=1, b=ClassOne(x=1, y=2))