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.2.tar.gz (2.2 kB view details)

Uploaded Source

File details

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

File metadata

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

File hashes

Hashes for should-dingus-0.2.tar.gz
Algorithm Hash digest
SHA256 cc7aac7aa4fd63bd138426484b02f55a3b0d49a70583cd9721f518ca4a3de68b
MD5 dc3d7d80f4f6e82e62afc957dcf82bfd
BLAKE2b-256 9b59119e9e194103f36ff1cc57dc81d235fe2d522dca510210f267368c583188

See more details on using hashes here.

Supported by

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