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 HelloWorldTests(unittest.TestCase):
    
    def test_default_case(self):
        function = main.hello_world
        
        with mock.patch('sys.stdout', new=io.StringIO()) as fake_stdout:
            function()

        output = fake_stdout.getvalue().strip()
        
        correct = "!" in output
        message = "You're missing the exclamation point."
        self.assertTrue(correct, message)
        
        correct = "," in output
        message = "You're missing the comma."
        self.assertTrue(correct, message)
        
        correct = "H" in output and "W" in output
        message = "I think you forgot to capitalize."
        self.assertTrue(correct, message)
        
        correct = output == "Hello, World!"
        message = "Doesn't quite print the correct output."
        self.assertTrue(correct, message)
        
        
if __name__ == "__main__":
    tests = HelloWorldTests()
    tests.test_default_case()