Initial commit
This commit is contained in:
22
patch_example.py
Normal file
22
patch_example.py
Normal file
@ -0,0 +1,22 @@
|
||||
#!/usr/bin/env python3
|
||||
|
||||
import unittest
|
||||
from io import StringIO
|
||||
from unittest.mock import patch
|
||||
import print_things # import the module containing the function with print statements
|
||||
|
||||
class TestPrintFunction(unittest.TestCase):
|
||||
|
||||
def test_print_example(self):
|
||||
# The expected output of the print statement
|
||||
expected_output = "the world\n"
|
||||
|
||||
# Using a context manager to temporarily replace sys.stdout with a StringIO object
|
||||
with patch('sys.stdout', new=StringIO()) as captured_output:
|
||||
print_things.print_the_world() # Call the function that has the print statement
|
||||
|
||||
# Assert the captured output is equal to the expected output
|
||||
self.assertEqual(captured_output.getvalue(), expected_output)
|
||||
|
||||
if __name__ == '__main__':
|
||||
unittest.main()
|
Reference in New Issue
Block a user