I used python version is 2.7.
this is my directory struct.
3kyu/
__init__.py
Calculator.py
tester/
__init__.py
Calculator_test.py
and below is i made unittest code and main code.
Calculator.py(main function code)
class Calculator(object):
def evaluate(self, string):
calc_lt = string.split(' ')
result = ''
for val in calc_lt:
try:
if val in ('()+-*/') or float(val):
result += val
except ValueError:
return False
return round(eval(result),4)
and test .py file.
Calculator_test.py(unittest code)
import unittest
from ..Calculator import Calculator as Calc
class Calculator_spec(unittest.TestCase):
def __init__(self):
self.Calcs = Calc()
def test_string_expect(self):
self.assertFalse(self.Calcs.evaluate("Hello TDD WORLD"))
self.assertFalse(self.Calcs.evaluate("Hello + TDD * WORLD"))
self.assertTrue(self.Calcs.evaluate("3 + 4 * 5 / 2 - 7"))
if __name__ == '__main__':
test_case = Calculator_spec
test_suite = unittest.TestLoader().loadTestsFromTestCase(test_case)
unittest.TextTestRunner(verbosity=2).run(test_suite)
The above code is a calculator to calculate strings.
When i run Calculator_test.py... error is
from ..Calculator import Calculator as Calc
ValueError: Attempted relative import beyond toplevel package
Please let me know what I need to do.
Thank you.