Print Function Tests

This is an example of how you can test the output stream of a student defined function.
This test makes sure the student's function named print_hello() prints "Hello World". It assumes the student's file name is example.py. Replace the import with whatever you student's file name is.
Note: This code converts the output to all lowercase and removes spaces to compare against the correct value.

Grading Tests:

import unittest
import sys, io
class CodingRoomsUnitTests(unittest.TestCase):
def test_default_case(self):
stdout = sys.stdout
sys.stdout = io.StringIO()
import example
example.print_hello()
output = sys.stdout.getvalue().strip("\n")
sys.stdout = stdout
answer = "Hello World".casefold().replace(" ", "")
student = output.casefold().replace(" ", "")
self.assertEqual(answer, student)
if __name__ == '__main__':
unittest.main()

Sample Solution:

example.py
def print_hello():
print("Hello World")