Newer
Older
#!/usr/bin/env python
from unittest import TestCase
from doc.analysis.generaterobotdata import GenerateRobotData
from json import load, dump
from deepdiff import DeepDiff
from os.path import dirname, exists
from os import listdir, remove, makedirs
class TestCommonBehaviours(TestCase):
@classmethod
def setUpClass(cls):
TestCommonBehaviours.folder_test_suites = dirname(dirname(dirname(__file__)))
folder_results = f'{TestCommonBehaviours.folder_test_suites}/doc/results'
# Check that the folder '/results' exists and if not, create it
if not exists(folder_results):
makedirs(folder_results)
else:
# Delete the /results folder
[remove(f'{folder_results}/{x}') for x in listdir(folder_results) if x.startswith('out')]
def setUp(self) -> None:
self.folder_test_suites = dirname(dirname(dirname(__file__)))
def common_function(self, robot_file, expected_value, difference_file):
data = GenerateRobotData(robot_file=robot_file,
execdir=self.folder_test_suites)
data.parse_robot()
obtained_response = data.get_info()
with open(expected_value, 'r') as file:
expected_response = load(file)
result = DeepDiff(t1=obtained_response, t2=expected_response, ignore_order=True)
if len(result) != 0:
# There are some differences
with open(difference_file, 'w') as fp:
dump(obj=obtained_response, indent=2, fp=fp)
assert False, f'They are some difference between the expected and obtained dictionaries: \n {result}'
def test_043_01(self):
robot_file = f'{self.folder_test_suites}/TP/NGSI-LD/CommonBehaviours/043.robot'
expected_value = f'{self.folder_test_suites}/doc/files/CommonBehaviours/043_01.json'
difference_file = f'{self.folder_test_suites}/doc/results/out_043_01.json'
self.common_function(robot_file=robot_file, expected_value=expected_value, difference_file=difference_file)
def test_044_01(self):
robot_file = f'{self.folder_test_suites}/TP/NGSI-LD/CommonBehaviours/044_01.robot'
expected_value = f'{self.folder_test_suites}/doc/files/CommonBehaviours/044_01.json'
difference_file = f'{self.folder_test_suites}/doc/results/out_044_01.json'
self.common_function(robot_file=robot_file, expected_value=expected_value, difference_file=difference_file)
def test_044_02(self):
robot_file = f'{self.folder_test_suites}/TP/NGSI-LD/CommonBehaviours/044_02.robot'
expected_value = f'{self.folder_test_suites}/doc/files/CommonBehaviours/044_02.json'
difference_file = f'{self.folder_test_suites}/doc/results/out_044_02.json'
self.common_function(robot_file=robot_file, expected_value=expected_value, difference_file=difference_file)
def test_044_03(self):
robot_file = f'{self.folder_test_suites}/TP/NGSI-LD/CommonBehaviours/044_03.robot'
expected_value = f'{self.folder_test_suites}/doc/files/CommonBehaviours/044_03.json'
difference_file = f'{self.folder_test_suites}/doc/results/out_044_03.json'
self.common_function(robot_file=robot_file, expected_value=expected_value, difference_file=difference_file)
def test_044_04(self):
robot_file = f'{self.folder_test_suites}/TP/NGSI-LD/CommonBehaviours/044_04.robot'
expected_value = f'{self.folder_test_suites}/doc/files/CommonBehaviours/044_04.json'
difference_file = f'{self.folder_test_suites}/doc/results/out_044_04.json'
self.common_function(robot_file=robot_file, expected_value=expected_value, difference_file=difference_file)
def test_044_05(self):
robot_file = f'{self.folder_test_suites}/TP/NGSI-LD/CommonBehaviours/044_05.robot'
expected_value = f'{self.folder_test_suites}/doc/files/CommonBehaviours/044_05.json'
difference_file = f'{self.folder_test_suites}/doc/results/out_044_05.json'
self.common_function(robot_file=robot_file, expected_value=expected_value, difference_file=difference_file)