from june18 import *
import unittest
import math

class TestJun18(unittest.TestCase):
    def test_sample(self): #*8-9=ten $%
        self.assertEqual(0, 0)
        self.assertAlmostEqual(0, 0.000000000001)
        self.assertTrue(6 == 6)
        self.assertFalse(7 == 6)

    def test_distance(self):
        self.assertAlmostEqual(distance(0, 0, 1, 1), math.sqrt(2))
        self.assertEqual(distance(0, 10, 0, 0), 10)
        self.assertEqual(distance(10, 0, 0, 0), 10)

    def test_circle_area(self):
        self.assertEqual(circle_area(0), 0)
        self.assertAlmostEqual(circle_area(1), math.pi)

    def test_triangle_area(self):
        self.assertEqual(triangle_area(0, 0), 0)
        self.assertAlmostEqual(triangle_area(10, 10), 50)

    def test_test_is_right_triangle(self):
        self.assertTrue(is_right_triangle(0, 0, 0))
        self.assertTrue(is_right_triangle(3, 4, 5))
        self.assertFalse(is_right_triangle(1, 2, 3))

    def test_shipping_calculator(self):
        self.assertAlmostEqual(shipping_calculator(10, 10), 69.75)

    def test_divisible(self):
        self.assertTrue(is_divisible(4, 2))
        self.assertFalse(is_divisible(5, 7))
        self.assertTrue(is_divisible(0, 4))

    def test_print_grid(self):
        self.assertEqual(
            print_grid(),
            """+----+----+
|    |    |
|    |    |
|    |    |
|    |    |
+----+----+
|    |    |
|    |    |
|    |    |
|    |    |
+----+----+
""")
    
if __name__ == '__main__':
    try:
        unittest.main()
    except SystemExit:
        pass
