mirror of
https://github.com/RRZE-HPC/OSACA.git
synced 2025-12-16 00:50:06 +01:00
frontend tests now use new OO style, removed AttrDict usage
This commit is contained in:
@@ -80,7 +80,7 @@ class TestFrontend(unittest.TestCase):
|
||||
fe = Frontend(path_to_yaml=os.path.join(self.MODULE_DATA_DIR, "tx2.yml"))
|
||||
fe.full_analysis(self.kernel_AArch64, dg, verbose=True)
|
||||
# TODO compare output with checked string
|
||||
|
||||
|
||||
def test_dict_output_x86(self):
|
||||
dg = KernelDG(self.kernel_x86, self.parser_x86, self.machine_model_csx, self.semantics_csx)
|
||||
fe = Frontend(path_to_yaml=os.path.join(self.MODULE_DATA_DIR, "csx.yml"))
|
||||
@@ -89,29 +89,29 @@ class TestFrontend(unittest.TestCase):
|
||||
self.assertEqual("csx", analysis_dict["Header"]["Architecture"])
|
||||
self.assertEqual(len(analysis_dict["Warnings"]), 0)
|
||||
for i, line in enumerate(self.kernel_x86):
|
||||
self.assertEqual(line["throughput"], analysis_dict["Kernel"][i]["Throughput"])
|
||||
self.assertEqual(line["latency"], analysis_dict["Kernel"][i]["Latency"])
|
||||
self.assertEqual(line.throughput, analysis_dict["Kernel"][i]["Throughput"])
|
||||
self.assertEqual(line.latency, analysis_dict["Kernel"][i]["Latency"])
|
||||
self.assertEqual(
|
||||
line["latency_wo_load"], analysis_dict["Kernel"][i]["LatencyWithoutLoad"]
|
||||
line.latency_wo_load, analysis_dict["Kernel"][i]["LatencyWithoutLoad"]
|
||||
)
|
||||
self.assertEqual(line["latency_cp"], analysis_dict["Kernel"][i]["LatencyCP"])
|
||||
self.assertEqual(line["instruction"], analysis_dict["Kernel"][i]["Instruction"])
|
||||
self.assertEqual(len(line["operands"]), len(analysis_dict["Kernel"][i]["Operands"]))
|
||||
self.assertEqual(line.latency_cp, analysis_dict["Kernel"][i]["LatencyCP"])
|
||||
self.assertEqual(line.instruction, analysis_dict["Kernel"][i]["Instruction"])
|
||||
self.assertEqual(len(line.operands), len(analysis_dict["Kernel"][i]["Operands"]))
|
||||
self.assertEqual(
|
||||
len(line["semantic_operands"]["source"]),
|
||||
len(line.semantic_operands["source"]),
|
||||
len(analysis_dict["Kernel"][i]["SemanticOperands"]["source"]),
|
||||
)
|
||||
self.assertEqual(
|
||||
len(line["semantic_operands"]["destination"]),
|
||||
len(line.semantic_operands["destination"]),
|
||||
len(analysis_dict["Kernel"][i]["SemanticOperands"]["destination"]),
|
||||
)
|
||||
self.assertEqual(
|
||||
len(line["semantic_operands"]["src_dst"]),
|
||||
len(line.semantic_operands["src_dst"]),
|
||||
len(analysis_dict["Kernel"][i]["SemanticOperands"]["src_dst"]),
|
||||
)
|
||||
self.assertEqual(line["flags"], analysis_dict["Kernel"][i]["Flags"])
|
||||
self.assertEqual(line["line_number"], analysis_dict["Kernel"][i]["LineNumber"])
|
||||
|
||||
self.assertEqual(line.flags, analysis_dict["Kernel"][i]["Flags"])
|
||||
self.assertEqual(line.line_number, analysis_dict["Kernel"][i]["LineNumber"])
|
||||
|
||||
def test_dict_output_AArch64(self):
|
||||
reduced_kernel = reduce_to_section(self.kernel_AArch64, self.semantics_tx2._isa)
|
||||
dg = KernelDG(
|
||||
@@ -126,28 +126,28 @@ class TestFrontend(unittest.TestCase):
|
||||
self.assertEqual("tx2", analysis_dict["Header"]["Architecture"])
|
||||
self.assertEqual(len(analysis_dict["Warnings"]), 0)
|
||||
for i, line in enumerate(reduced_kernel):
|
||||
self.assertEqual(line["throughput"], analysis_dict["Kernel"][i]["Throughput"])
|
||||
self.assertEqual(line["latency"], analysis_dict["Kernel"][i]["Latency"])
|
||||
self.assertEqual(line.throughput, analysis_dict["Kernel"][i]["Throughput"])
|
||||
self.assertEqual(line.latency, analysis_dict["Kernel"][i]["Latency"])
|
||||
self.assertEqual(
|
||||
line["latency_wo_load"], analysis_dict["Kernel"][i]["LatencyWithoutLoad"]
|
||||
line.latency_wo_load, analysis_dict["Kernel"][i]["LatencyWithoutLoad"]
|
||||
)
|
||||
self.assertEqual(line["latency_cp"], analysis_dict["Kernel"][i]["LatencyCP"])
|
||||
self.assertEqual(line["instruction"], analysis_dict["Kernel"][i]["Instruction"])
|
||||
self.assertEqual(len(line["operands"]), len(analysis_dict["Kernel"][i]["Operands"]))
|
||||
self.assertEqual(line.latency_cp, analysis_dict["Kernel"][i]["LatencyCP"])
|
||||
self.assertEqual(line.instruction, analysis_dict["Kernel"][i]["Instruction"])
|
||||
self.assertEqual(len(line.operands), len(analysis_dict["Kernel"][i]["Operands"]))
|
||||
self.assertEqual(
|
||||
len(line["semantic_operands"]["source"]),
|
||||
len(line.semantic_operands["source"]),
|
||||
len(analysis_dict["Kernel"][i]["SemanticOperands"]["source"]),
|
||||
)
|
||||
self.assertEqual(
|
||||
len(line["semantic_operands"]["destination"]),
|
||||
len(line.semantic_operands["destination"]),
|
||||
len(analysis_dict["Kernel"][i]["SemanticOperands"]["destination"]),
|
||||
)
|
||||
self.assertEqual(
|
||||
len(line["semantic_operands"]["src_dst"]),
|
||||
len(line.semantic_operands["src_dst"]),
|
||||
len(analysis_dict["Kernel"][i]["SemanticOperands"]["src_dst"]),
|
||||
)
|
||||
self.assertEqual(line["flags"], analysis_dict["Kernel"][i]["Flags"])
|
||||
self.assertEqual(line["line_number"], analysis_dict["Kernel"][i]["LineNumber"])
|
||||
self.assertEqual(line.flags, analysis_dict["Kernel"][i]["Flags"])
|
||||
self.assertEqual(line.line_number, analysis_dict["Kernel"][i]["LineNumber"])
|
||||
|
||||
##################
|
||||
# Helper functions
|
||||
|
||||
Reference in New Issue
Block a user