Skip to main content

Dingus call matcher for should-dsl

Project description

This modules contains a custom matcher so you can use should_dsl with Dingus calls

A small warning: The | operator hack of should_dsl’s doesn’t really go well with the __or__() of a Dingus. I think the | hack is nasty, and I’m not sure I like should_dsl for it. This is where Ruby seems really pretty to me.

You only need to import it

>>> from should_dsl import should, should_not
>>> from dingus import Dingus
>>> import should_dingus

call

Checks calls on a Dingus

>>> stub = Dingus('stub')
>>> def some_function():
...     stub()
...
>>> some_function |should| call(stub)

call can also check that it should be called once:

>>> def some_function():
...     stub()
...     stub()
...
>>> stub.reset()
>>> some_function |should| call(stub)
>>> stub.reset()
>>> some_function |should| call(stub).once
Traceback (most recent call last):
...
ShouldNotSatisfied: <Dingus stub> was called 2 times, expected 1

call can even check the parameters with with_params:

>>> def some_function():
...     stub(True, kwak='tuut', braat='aap')
...
>>> stub.reset()
>>> some_function |should| call(stub).with_params(True, kwak='tuut', braat='aap')
>>> stub.reset()
>>> some_function |should| call(stub).with_params(True, kwak='tuut')
Traceback (most recent call last):
...
ShouldNotSatisfied: <Dingus stub> has not been called with params (True,) {'kwak': 'tuut'}

call with_params can be combined with once:

>>> def some_function():
...     stub(True, kwak='tuut', braat='aap')
...
>>> stub.reset()
>>> some_function |should| call(stub).once.with_params(True, kwak='tuut', braat='aap')
>>> stub.reset()
>>> some_function |should| call(stub).with_params(True, kwak='tuut', braat='aap').once

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

should-dingus-0.3.tar.gz (4.4 kB view details)

Uploaded Source

File details

Details for the file should-dingus-0.3.tar.gz.

File metadata

  • Download URL: should-dingus-0.3.tar.gz
  • Upload date:
  • Size: 4.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for should-dingus-0.3.tar.gz
Algorithm Hash digest
SHA256 35b9ad7e059793b224f0496ba1d5aa374618dd43bc243438971a00277ea63255
MD5 ec802d998fcc726b532c40644ea5f044
BLAKE2b-256 5c03b239beab0a360ba27365dd6f171de9f0a5aaac5c413b6b83efea33303f27

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page