• Deprecated code was removed
  • Improved documentation
  • Documentation is now tested by Sphinx
  • Class Registry was renamed to mockify.Session
  • All classes for making mocks were replaced by single generic mockify.mock.Mock class, supported by mockify.mock.MockFactory class
  • New actions introduced (see mockify.actions)
  • New matchers introduced (see mockify.matchers)
  • New assertion errors introduced and improved exception hierarchy (see mockify.exc)
  • Better reporting of expectation location in assertion messages
  • Can now define ordered expectations with mockify.ordered() context manager
  • Can now patch imports using mockify.patched() context manager
  • CI workflow updated + added testing against various Python versions (3.x for now)
  • Many other improvements in the code and the tests


  • Dependency management provided by pipenv
  • Project’s CLI provided by Invoke library
  • Added mockify.mock.Namespace mock class
  • Use Sphinx Read The Docs theme for documentation
  • Class mockify.mock.Object can now be used without subclassing and has API similar to other mock classes
  • Module mockify.helpers (was merged to library core)
  • Module mockify.times (renamed to mockify.cardinality)
  • Module mockify.engine is now available via mockify
  • Modules mockify.mock.function and mockify.mock.object are now merged into mockify.mock


  • Added strategies for dealing with unexpected calls


  • Added frontend for mocking Python objects


  • Updated copyright notice
  • Added description to Alabaster Sphinx theme used for docs
  • Added FunctionFactory mocking utility
  • Changed Registry.assert_satisfied method to allow it to get mock names to check using positional args
  • Script for running tests added (pytest wrapper)
  • Updated script and hardcode year the project was started and author’s name


  • First release published to PyPI