Mocks for subprocess commands
Project description
MockProcess is a mock for the subprocess module to be used in your unit tests. Right now it only supports the check_output method, but eventually popen will be supported as well.
It is used via a context manager. Here’s a basic example
>>> import subprocess
>>> import unittest
>>> from mockprocess import MockCheckOutput
>>> class Test(unittest.TestCase):
... def test_simple(self):
... with MockCheckOutput('hello\n'):
... output = subprocess.check_output(['/bin/echo', 'hello'])
... self.assertEqual(output, 'hello\n')
...
If you need to test how you handle errors, you can set an exit code as well.
>>> import subprocess
>>> import unittest
>>> from mockprocess import MockCheckoutput
>>> class Test(unittest.TestCase):
... def test_exception(self):
... try:
... with MockCheckOutput('hello\n', exit_code=127):
... subprocess.check_output(['/bin/false'])
... except subprocess.CalledProcessError as exp:
... pass
... else:
... self.fail('exception was not raised')
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
mockprocess-0.2.tar.gz
(2.2 kB
view details)
File details
Details for the file mockprocess-0.2.tar.gz.
File metadata
- Download URL: mockprocess-0.2.tar.gz
- Upload date:
- Size: 2.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
305ac8a0f36713af528368676bd1c015d9f49a8853a73dc531b68ef63726aa40
|
|
| MD5 |
15fd0ac9be06e5fefad3574a71b51c3c
|
|
| BLAKE2b-256 |
61a6f824b0b8f00273a939b65b08b7c419c89c07b77e2247d196d1d14fb59c10
|