Add testcases to cover design validation errors
This commit is contained in:
@@ -52,7 +52,7 @@ class BaseTestCase(unittest.TestCase):
|
||||
@property
|
||||
def rerun(self) -> bool:
|
||||
"""
|
||||
Re-run wothout deleting and re-generating prior output directory.
|
||||
Re-run without deleting and re-generating prior output directory.
|
||||
"""
|
||||
return self.request.config.getoption("--rerun")
|
||||
|
||||
@@ -79,14 +79,14 @@ class BaseTestCase(unittest.TestCase):
|
||||
f.write(f"{k}: {repr(v)}\n")
|
||||
|
||||
|
||||
def _export_regblock(self):
|
||||
def export_regblock(self):
|
||||
"""
|
||||
Call the peakrdl_regblock exporter to generate the DUT
|
||||
"""
|
||||
this_dir = self.get_testcase_dir()
|
||||
|
||||
if self.rdl_file:
|
||||
rdl_file = self.rdl_file
|
||||
rdl_file = os.path.join(this_dir, self.rdl_file)
|
||||
else:
|
||||
# Find any *.rdl file in testcase dir
|
||||
rdl_file = glob.glob(os.path.join(this_dir, "*.rdl"))[0]
|
||||
@@ -120,17 +120,21 @@ class BaseTestCase(unittest.TestCase):
|
||||
default_reset_async=self.default_reset_async,
|
||||
)
|
||||
|
||||
def delete_run_dir(self) -> None:
|
||||
run_dir = self.get_run_dir()
|
||||
if os.path.exists(run_dir):
|
||||
shutil.rmtree(run_dir)
|
||||
|
||||
def setUp(self) -> None:
|
||||
if self.rerun:
|
||||
return
|
||||
|
||||
# Create fresh build dir
|
||||
run_dir = self.get_run_dir()
|
||||
if os.path.exists(run_dir):
|
||||
shutil.rmtree(run_dir)
|
||||
self.delete_run_dir()
|
||||
pathlib.Path(run_dir).mkdir(parents=True, exist_ok=True)
|
||||
|
||||
self._write_params()
|
||||
|
||||
# Convert testcase RDL file --> SV
|
||||
self._export_regblock()
|
||||
self.export_regblock()
|
||||
|
||||
Reference in New Issue
Block a user