باید-dingus شامل تطبیق سفارشی بنابراین شما می توانید should_dsl با Dingus خواستار استفاده کنید.
هشدار کوچک: | اپراتور هک از should_dsl می کند، واقعا به خوبی با __ __or () از یک Dingus. من فکر می کنم | هک تند و زننده است، و من مطمئن هستم که من دوست دارم should_dsl برای آن نیست. این جایی است که به نظر می رسد روبی واقعا خیلی به من.
شما فقط نیاز به آن را وارد
>>> از واردات should_dsl باید، should_not
>>> از dingus واردات Dingus
>>> should_dingus واردات
دعوت
چک خواستار Dingus
>>> خرد = Dingus ('خرد')
>>> دف some_function ():
... خرد ()
...
>>> some_function | باید | تماس (خرد)
تماس نیز می تواند بررسی کنید که باید آن را یک بار به نام:
>>> دف some_function ():
... خرد ()
... خرد ()
...
>>> stub.reset ()
>>> some_function | باید | تماس (خرد)
>>> stub.reset ()
>>> some_function | باید | تماس (خرد) .once
Traceback (بیشتر تماس های اخیر و زمان آخرین):
...
ShouldNotSatisfied: <خرد Dingus> 2 بار نامیده می شد، انتظار می رود 1
تماس بگیرید حتی می توانید بررسی پارامترها با with_params:
>>> دف some_function ():
... خرد (درست است، کواک = 'tuut، braat =' AAP)
...
>>> stub.reset ()
>>> some_function | باید | تماس (خرد) .with_params (درست است، کواک = 'tuut، braat =' AAP)
>>> stub.reset ()
>>> some_function | باید | تماس (خرد) .with_params (درست است، کواک = 'tuut')
Traceback (بیشتر تماس های اخیر و زمان آخرین):
...
ShouldNotSatisfied: <خرد Dingus> شده است با پارامترهای (درست است،) {: 'tuut' 'کواک'} به نام نه
with_params تماس را می توان با یک بار در ترکیب:
>>> دف some_function ():
... خرد (درست است، کواک = 'tuut، braat =' AAP)
...
>>> stub.reset ()
>>> some_function | باید | تماس (خرد) .once.with_params (درست است، کواک = 'tuut، braat =' AAP)
>>> stub.reset ()
>>> some_function | باید | تماس (خرد) .with_params (درست است، کواک = 'tuut، braat =' AAP) یک بار
در مورد نیاز:
پایتون.
نظر یافت نشد