def test_add_empty(self): obj = calc.StringCalculator() input_string = "" check_str = 0 self.assertEqual(obj.add(input_string), check_str)
import string_calculator import pytest cal = string_calculator.StringCalculator() def test_ex1v1(): #v1 stands for version 1 inputs = ['', '2', '4,18', '2, 50'] outputs = [0, 2, 22, 52] for input, output in zip(inputs, outputs): assert cal.add(input) == output def test_ex2v1(): inputs = ['6, 7, 2', '4, 4, 4,9', '0,0, 1, 1, 1'] outputs = [15, 21, 3] for input, output in zip(inputs, outputs): assert cal.add(input) == output def test_ex3v1(): inputs = ['60\n3, 8\n1', '1\n0,6\n30, 4'] outputs = [72, 41] for input, output in zip(inputs, outputs): assert cal.add(input) == output @pytest.mark.parametrize('test_input, expected', [('', 0), ('2', 2), ('4,18', 22), ('2, 50', 52)]) def test_ex1(test_input, expected): assert cal.add(test_input) == expected
def test_add_bigger_thousand(self): obj = calc.StringCalculator() input_string = "200, 1000, 2000, 100" check_str = 300 self.assertEqual(obj.add(input_string), check_str)
def test_multiple_diviator(self): obj = calc.StringCalculator() input_string = "//####\n1####2" check_str = 3 self.assertEqual(obj.add(input_string), check_str)
def test_add_below_zero(self): obj = calc.StringCalculator() input_string = "-1,2,-3" check_str = "отрицательные числа запрещены: -1,-3" self.assertEqual(obj.add(input_string), check_str)
def test_add_new_line_and_comma(self): obj = calc.StringCalculator() input_string = "1\n2,3\n4" check_str = 10 self.assertEqual(obj.add(input_string), check_str)
def test_add_new_line(self): obj = calc.StringCalculator() input_string = "2\n3" check_str = 5 self.assertEqual(obj.add(input_string), check_str)
def test_add_comma(self): obj = calc.StringCalculator() input_string = "2,3" check_str = 5 self.assertEqual(obj.add(input_string), check_str)
def test_add_self(self): obj = calc.StringCalculator() input_string = "2" check_str = 2 self.assertEqual(obj.add(input_string), check_str)