สร้างและเปรียบเทียบวัตถุตัวอย่างอย่างรวดเร็ว
ปรัชญาของ Chide คือการให้รีจิสทรีของพารามิเตอร์ที่จำเป็นในการสร้างอินสแตนซ์ของออบเจ็กต์สำหรับการทดสอบของคุณ นอกจากนี้ยังมีการรองรับการลดความซับซ้อนของออบเจ็กต์จนถึงการแมปแอตทริบิวต์เพื่อการเปรียบเทียบและเรนเดอร์ที่ง่ายขึ้น พร้อมด้วยการแยกวิเคราะห์และเรนเดอร์รูปแบบสำหรับการแทรกหรือยืนยันเกี่ยวกับออบเจ็กต์หลายรายการที่เป็นตารางตามธรรมชาติ
สมมติว่าเรามีสองคลาสที่แต่ละคลาสต้องการพารามิเตอร์สองตัวเพื่อที่จะสร้างอินสแตนซ์:
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))