import sys
import unittest
from calculator import Calculator

class TestCalculator(unittest.TestCase):

    def setUp(self):
        self.c = Calculator()

    # Test add-function
    def test_add(self):
        erg = self.c.add(3, 5)
        self.assertEqual(erg, 8)

    # Test sub-function
    def test_sub(self):
        erg = self.c.sub(10, 3)
        self.assertEqual(erg, 7)

    # Test mul-function
    def test_mul(self):
        erg = self.c.mul(4, 6)
        self.assertEqual(erg, 24)

    # Test div-function
    def test_div(self):
        erg = self.c.div(20, 4)
        self.assertEqual(erg, 5)

    # Test div/0
    def test_div_by_zero(self):
        with self.assertRaises(ValueError):
            self.c.div(10, 0)
    
    # Test negative numbers

    # Test wrong inputs