Exemplo n.º 1
0
from calculator import Calculator

exprasion = [2, '+', 2, "*", 2]
calc = Calculator(exprasion)

print(calc.reverse_polish_notation())  # 2 2 * 2 +
print(calc.calculate())  # 6

# TDD
# Test driven development
# BDD
# Behavior driven development
# postgres
Exemplo n.º 2
0
 def testInitialOutput(self):
     calculator = Calculator()
     self.assertEqual('Invalid choice', calculator.getOutput())
Exemplo n.º 3
0
 def testAddition(self):
     calculator = Calculator()
     calculator.input(5)
     calculator.input('+')
     calculator.input('7')
     self.assertEqual('12', calculator.getOutput())
Exemplo n.º 4
0
 def test_sub(self):
     c = Calculator()
     self.assertEqual(c.sub(9, 3), 6)
Exemplo n.º 5
0
 def test_add2(self):
     c = Calculator()
     self.assertEqual(c.add(12, -10), 2)
Exemplo n.º 6
0
 def test_div(self):
     c = Calculator(6, 2)
     result = c.div()
     self.assertEqual(result, 3)
Exemplo n.º 7
0
 def test_add(self):
     sut = Calculator()
     self.assertEqual(3, sut.add(1, 2))
def test_divide():
    calculator = Calculator()
    result = calculator.division(9, 3)
    assert result == 3
def test_divide_by_zero():
    calculator = Calculator()
    with pytest.raises(CalculatorError):
        result = calculator.division(9, 0)
from calculator import Calculator

# initialize object for abstraction
calculator = Calculator()

while True:
    print(
        "Type:\n A for Addition\n S for Subtraction\n M for multiplication\n D for division\n"
    )
    operation = input("What would you like to do?: ")
    print()

    num1 = int(input("Enter num1: "))
    num2 = int(input("Enter num2: "))

    if operation == "A":
        result = calculator.add(num1, num2)

    elif operation == "S":
        result = calculator.subtract(num1, num2)

    elif operation == "M":
        result = calculator.multiply(num1, num2)

    elif operation == "D":
        result = calculator.divide(num1, num2)

    else:
        print("Invalid operation")

    print(f"Your result is {result}\n")
def test_mulitply():
    calculator = Calculator()
    result = calculator.multiply(9, 3)
    assert result == 27
Exemplo n.º 12
0
def print_list(list):
    list_string = ''
    for item in list:
        list_string += str(item) + '\t'
    print(list_string)


symbol_set = set(
    r'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890')
numerics_set = set(r'1234567890. ')
operators_set = set(r'+-*/() ')

user_input = ''
tree = None
calc = Calculator()

print()

while user_input != 'exit':
    user_input = input()

    if len(user_input) > 4 and user_input[0:4] == 'tree':
        current_item = ''
        for char in user_input[4:]:
            if char in symbol_set:
                current_item += char
        tree = Tree(current_item)
    elif len(user_input) > 3 and user_input[0:3] == 'add':
        current_item = ''
        parent = ''
Exemplo n.º 13
0
 def test_instantiate_calculator(self):
     calculator = Calculator()
     self.assertIsInstance(calculator, Calculator)
Exemplo n.º 14
0
def test_add_weirder_stuff():
    calculator = Calculator()
    with pytest.raises(CalculatorError):
        result = calculator.add(
            "two", "three"
        )  # it will be failed. So, we need to create an exception (raises)
Exemplo n.º 15
0
 def test_sub(self):
     c = Calculator(7, 2)
     result = c.sub()
     self.assertEqual(result, 5)
def test_add():
    calculator = Calculator()
    result = calculator.add(2, 3)
    assert result == 5
Exemplo n.º 17
0
 def test_mul(self):
     c = Calculator(3, 3)
     result = c.mul()
     self.assertEqual(result, 10)
def test_subtract():
    calculator = Calculator()
    result = calculator.subtract(9, 3)
    assert result == 6
from calculator import Calculator


def println(val):
    print(val, '\n')


# test cases expected to fail
# test case exclude NameError - you have to do that on your own
# or best use literals

# i chose the '+' operator and the int and str for simplicity sake.
# this will also work for float and str
str_str_cal = Calculator('4', '+', '6')
println(str_str_cal.calculate())

str_int_cal = Calculator('4', '+', 6)
println(str_int_cal.calculate())

int_str_cal = Calculator(4, '+', '6')
println(int_str_cal.calculate())

# zero operand
int_div_zero = Calculator(6, '/', 0)
println(int_div_zero.calculate())

# test case expected to pass
int_int_cal = Calculator(4, '+', 6)
println(int_int_cal.calculate())

zero_div_int = Calculator(0, '/', 4)
Exemplo n.º 20
0
 def setUp(self) -> None:
     self.calculator = Calculator()
Exemplo n.º 21
0
 def test_add3(self):
     c = Calculator()
     self.assertEqual(c.add(5, 8), 13)
Exemplo n.º 22
0
 def setUp(self):
     self.root = tk.Tk()
     self.calc = Calculator(self.root)
Exemplo n.º 23
0
 def test_add(self):
     c = Calculator()
     self.assertEqual(c.add(3, 3), 6)
Exemplo n.º 24
0
def main():
    calc = Calculator()
    performCalcLoop(calc)
    print("Done Calculating.")
Exemplo n.º 25
0
 def testExit(self):
     calculator = Calculator()
     calculator.input('E')
     self.assertEqual('Invalid choice', calculator.getOutput())
Exemplo n.º 26
0
 def setUp(self):
     self.calculator = Calculator()
Exemplo n.º 27
0
 def testAddZeroes(self):
     calculator = Calculator()
     calculator.input(0)
     calculator.input(0)
     calculator.input(0)
     self.assertEqual('0', calculator.getOutput())
Exemplo n.º 28
0
 def test_add(self):
     c = Calculator(3, 5)
     result = c.add()
     self.assertEqual(result, 8)
Exemplo n.º 29
0
 def testSquare(self):
     calculator = Calculator()
     calculator.input(4)
     calculator.input('squared')
     self.assertEquals('16', calculator.getOutput())
Exemplo n.º 30
0
def test_add():

    c = Calculator(3, 8)
    result = c.add()
    print('运算结果为:' + str(result))
    assert result == 11, '加法运算失败!'