Skip to main content

A helper mocking function to mask ImportErrors

Project description

https://travis-ci.org/posener/mock-import.svg?branch=master

A helper mocking function to mask ImportError s on a scoped code. Failed imports will be ignored, unless specified by the do_not_mock argument.

Installation

Using pip: pip install mock-import

Usage

Import:
>>> from mock_import import mock_import
Mocking import for a code block:
>>> with mock_import():
...     import no_such_module  # Won't raise ImportError
...     no_such_module.no_such_function()  # Won't raise AttributeError
Mocking import as a decorator:
>>> @mock_import()
... def method():
...     import no_such_module  # Won't raise ImportError
...     no_such_module.no_such_function()  # Won't raise AttributeError
>>>     import no_such_module  # raises ImportError
Making an exception:
>>> with mock_import(do_not_mock='no_such_module'):
...     import no_such_other_module  # Won't raise ImportError
...     import no_such_module  # Will raise ImportError
>>> with mock_import(do_not_mock=['nsm1', 'nsm2']):
...     import nsm  # Won't raise ImportError
...     import nsm1  # Will raise ImportError
...     import nsm2  # Will raise ImportError

Project details


Release history Release notifications

This version
History Node

0.0.3

History Node

0.0.2

History Node

0.0.1

Download files

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

Filename, size & hash SHA256 hash help File type Python version Upload date
mock-import-0.0.3.tar.gz (1.8 kB) Copy SHA256 hash SHA256 Source None Sep 16, 2016

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging CloudAMQP CloudAMQP RabbitMQ AWS AWS Cloud computing Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page