import unittest import io import re from unittest import mock import math import student_X as main #Replace student_X with your filename import sys import io from io import StringIO class MilesTests(unittest.TestCase): def test_default_case(self): function = main.miles with mock.patch('sys.stdout', new=io.StringIO()) as fake_stdout: function() output = fake_stdout.getvalue().strip() correct = ("6.21118" in output) or ("6.2137" in output) message = "You don't have the correct number of miles." self.assertTrue(correct, message) correct = ("There are 6.21118" in output and " miles in 10 kilometers." in output) or ("There are 6.2137" in output and " miles in 10 kilometers." in output) message = "You're not printing the correct statement." self.assertTrue(correct, message) if __name__ == "__main__": tests = MilesTests() tests.test_default_case()