Feb-19-2020, 11:29 AM
I have a file to validate the label
#configmanager.py class FunctionNode(object): def __validate_func_label(self, func_label): pattern = re.compile('^fn[1-9][0-9]{0,1}$') if not pattern.match(func_label): raise Exception( f"Invalid value {func_label} for function label in function config.")and I have to write a test case using Unit Testing. Test case will check if user enters fn is from fn1 to fn99, it will pass. Otherwise if fn out of range such as fn0 or fn100 then it fail. I writed a TestClass that should have passed
#test__validate_func_label.py import unittest import re from configmanager import FunctionNode class TestValidateFuncLabel(unittest.TestCase): def test_fn_within_range(self): res = FunctionNode.__validate_func_label('fnsd1') pattern = re.compile('^fn1$') self.assertIn(pattern, range('^fn1$', '^fn100$')) if __name__ == "__main__": unittest.main()But it has raised an error.
Error:(base) D:\Python>python -u "d:\Python\Analyzer\toshiba\yieldnews\analyzer\test__validate_func_label.py"
E
======================================================================
ERROR: test_fn_within_range (__main__.TestValidateFuncLabel)
----------------------------------------------------------------------
Traceback (most recent call last):
File "d:\Python\Analyzer\toshiba\yieldnews\analyzer\test__validate_func_label.py", line 8, in test_fn_within_range
res = FunctionNode.__validate_func_label('fnsd1')
AttributeError: type object 'FunctionNode' has no attribute '_TestValidateFuncLabel__validate_func_label'
----------------------------------------------------------------------
Ran 1 test in 0.000s
FAILED (errors=1)
I don't know where am I wrong ? Can you fix it ?