@@ -224,6 +224,10 @@ POWER_TESTS = [
224224 "path_groups" ,
225225]
226226
227+ ELEMENT_POWER_TESTS = [
228+ "power_modules" ,
229+ ]
230+
227231def mock_array (name , config ):
228232 """Defines the mock array build targets for OpenROAD-flow-scripts.
229233
@@ -510,3 +514,62 @@ def mock_array(name, config):
510514 ),
511515 ],
512516 )
517+
518+ for power_test in ELEMENT_POWER_TESTS :
519+ if v != "base" :
520+ continue
521+ for stage in POWER_STAGES :
522+ orfs_run (
523+ name = "Element_{variant}_{stage}_{power_test}" .format (
524+ variant = variant ,
525+ power_test = power_test ,
526+ stage = stage ,
527+ ),
528+ src = ":Element_{variant}_{stage}" .format (variant = variant , stage = stage ),
529+ outs = [
530+ "{variant}_{power_test}_{stage}.txt" .format (
531+ variant = variant ,
532+ power_test = power_test ,
533+ stage = stage ,
534+ ),
535+ ],
536+ arguments = {
537+ "OUTPUT" : "$(location :{variant}_{power_test}_{stage}.txt)" .format (
538+ variant = variant ,
539+ power_test = power_test ,
540+ stage = stage ,
541+ ),
542+ "POWER_STAGE_NAME" : stage ,
543+ "POWER_STAGE_STEM" : POWER_STAGE_STEM [stage ],
544+ "VCD_STIMULI" : "$(location :vcd_{variant}_{stage})" .format (variant = variant , stage = stage ),
545+ },
546+ data = [
547+ ":vcd_{variant}_{stage}" .format (variant = variant , stage = stage ),
548+ ],
549+ script = ":{power_test}.tcl" .format (power_test = power_test ),
550+ tags = ["manual" ],
551+ visibility = ["//visibility:public" ],
552+ )
553+
554+ sh_test (
555+ name = "Element_{variant}_{power_test}_{stage}_test" .format (
556+ variant = variant ,
557+ power_test = power_test ,
558+ stage = stage ,
559+ ),
560+ srcs = ["ok.sh" ],
561+ args = [
562+ "$(location :Element_{variant}_{stage}_{power_test})" .format (
563+ variant = variant ,
564+ stage = stage ,
565+ power_test = power_test ,
566+ ),
567+ ],
568+ data = [
569+ ":Element_{variant}_{stage}_{power_test}" .format (
570+ variant = variant ,
571+ power_test = power_test ,
572+ stage = stage ,
573+ ),
574+ ],
575+ )
0 commit comments