from july11 import *
import unittest
import math

class TestJuly11(unittest.TestCase):
    def test_square_list(self):
        self.assertEqual(
            square_list([2, 3, 4, 5, 6, 7]),
            [4, 9, 16, 25, 36, 49])

        self.assertEqual(square_list([]), [])
        self.assertEqual(square_list([10]), [100])

        self.assertRaises(TypeError, square_list, ['a', 'b', 'c'])


    def test_dot_product(self):
        self.assertEqual(dot_product([2, 3], [4, 5]), [8, 15])
        self.assertEqual(
            dot_product([1, 2, 3, 4, 5], [2, 4, 6, 8, 10]),
            [2, 8, 18, 32, 50])
        self.assertEqual(dot_product([], []), [])
        
if __name__ == '__main__':
    try:
        unittest.main()
    except SystemExit:
        pass
