@@ -440,18 +440,12 @@ proc LocalBuild {BuildName Path_Or_File args} {
440440 CallbackAfter_Build ${Path_Or_File}
441441
442442 if {[info exists TestSuiteName]} {
443- # Finalize Test Suite
444- set RequirementsSourceDir [file join ${::osvvm::ReportsDirectory} ${TestSuiteName} ]
445- set RequirementsResultsFile [file join ${::osvvm::ReportsDirectory} ${BuildName} ${TestSuiteName} _req.yml]
446- MergeRequirements $RequirementsSourceDir $RequirementsResultsFile
447- Requirements2Html $RequirementsResultsFile " ../"
448-
449443 FinalizeTestSuite $TestSuiteName
450444 FinishTestSuiteBuildYaml
451445 unset TestSuiteName
452446 }
453447
454- # Finalize Build
448+ # Merge Requirements for Build
455449 set RequirementsSourceDir [file join ${::osvvm::ReportsDirectory} ${BuildName} ]
456450 set RequirementsResultsFile [file join ${::osvvm::ReportsDirectory} ${BuildName} _req.yml]
457451 MergeRequirements $RequirementsSourceDir $RequirementsResultsFile
@@ -1312,8 +1306,15 @@ proc MergeCoverage {SuiteName MergeName} {
13121306 vendor_MergeCodeCoverage $SuiteName ${::osvvm::CoverageDirectory} ${MergeName}
13131307}
13141308
1309+
13151310# -------------------------------------------------
13161311proc FinalizeTestSuite {SuiteName} {
1312+
1313+ # Merge Requirements for each test case into TestSuite Requirements
1314+ set RequirementsSourceDir [file join ${::osvvm::ReportsDirectory} ${SuiteName} ]
1315+ set RequirementsResultsFile [file join ${::osvvm::ReportsDirectory} ${::osvvm::BuildName} ${SuiteName} _req.yml]
1316+ MergeRequirements $RequirementsSourceDir $RequirementsResultsFile
1317+ Requirements2Html $RequirementsResultsFile " ../"
13171318
13181319 # Merge Code Coverage for the Test Suite if it exists
13191320 if {$::osvvm::RanSimulationWithCoverage eq " true" } {
@@ -1326,16 +1327,22 @@ proc FinalizeTestSuite {SuiteName} {
13261327# -------------------------------------------------
13271328proc TestSuite {SuiteName} {
13281329 variable TestSuiteName
1329-
1330+
13301331 puts " TestSuite $SuiteName " ; # EchoOsvvmCmd
13311332
1332-
13331333 set FirstRun [expr ![info exists TestSuiteName]]
1334+
13341335 if {! $FirstRun } {
1335- set RequirementsSourceDir [file join ${::osvvm::ReportsDirectory} ${TestSuiteName} ]
1336- set RequirementsResultsFile [file join ${::osvvm::ReportsDirectory} ${::osvvm::BuildName} ${TestSuiteName} _req.yml]
1337- MergeRequirements $RequirementsSourceDir $RequirementsResultsFile
1338- Requirements2Html $RequirementsResultsFile " ../"
1336+ if {$SuiteName eq $TestSuiteName } {
1337+ # Do nothing if test suite already set
1338+ puts " Warning: Redundant TestSuite $SuiteName - name already set to $TestSuiteName - Command Ignored"
1339+ return " "
1340+ }
1341+ # #!! # Finalize previous Test Suite
1342+ # #!! set RequirementsSourceDir [file join ${::osvvm::ReportsDirectory} ${TestSuiteName}]
1343+ # #!! set RequirementsResultsFile [file join ${::osvvm::ReportsDirectory} ${::osvvm::BuildName} ${TestSuiteName}_req.yml]
1344+ # #!! MergeRequirements $RequirementsSourceDir $RequirementsResultsFile
1345+ # #!! Requirements2Html $RequirementsResultsFile "../"
13391346
13401347 # Finish previous test suite before ending current one
13411348 FinalizeTestSuite $TestSuiteName
0 commit comments