Skip to content

Commit 44783c4

Browse files
committed
Empty test case handling
1 parent 86f792b commit 44783c4

3 files changed

Lines changed: 25 additions & 8 deletions

File tree

OsvvmSettingsDefault.tcl

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,8 @@ namespace eval ::osvvm {
6060
# CurrentWorkingDirectory is a relative path to the scripts currently running
6161
variable CurrentWorkingDirectory ""
6262
# CurrentSimulationDirectory is an absolute path to the simulation directory (for reports and such)
63-
variable CurrentSimulationDirectory "Invalid Initial Path !@#$%^&*()+=|><| Should be replaced By CheckWorkingDir"
63+
# ** Note it is intentionally different from InvalidDirectory
64+
variable CurrentSimulationDirectory "Invalid Initial Path !@#$%^&*()+=|><| Should be replaced By CheckWorkingDir" ;# **
6465

6566
#
6667
# Directory structure and results file management
@@ -95,17 +96,21 @@ namespace eval ::osvvm {
9596

9697
#
9798
# TCL Error signaling during a build
99+
# If statements make the persistent with running StartUp
98100
#
101+
99102
if {![info exists FailOnBuildErrors]} {
100-
variable FailOnBuildErrors "true"
103+
variable FailOnBuildErrors "false"
101104
}
102105
if {![info exists FailOnReportErrors]} {
103106
variable FailOnReportErrors "false"
104107
}
105108
if {![info exists FailOnTestCaseErrors]} {
106109
variable FailOnTestCaseErrors "false"
107-
}
108-
110+
}
111+
if {![info exists FailOnEmptyTestSuite]} {
112+
variable FailOnEmptyTestSuite "true"
113+
}
109114
#
110115
# Stop Counts for Failures seen by Analyze and Simulate
111116
# Value 0 is special to mean, don't stop

ReportBuildDict2Html.tcl

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -392,7 +392,12 @@ proc CreateTestCaseSummaries {TestDict} {
392392
}
393393
}
394394
puts $ResultsFile " <tr>"
395-
puts $ResultsFile " <td><a href=\"${TestCaseHtmlFile}\">${TestCaseName}</a></td>"
395+
if {($TestStatus eq "PASSED") || ($TestStatus eq "FAILED")} {
396+
puts $ResultsFile " <td><a href=\"${TestCaseHtmlFile}\">${TestCaseName}</a></td>"
397+
} else {
398+
#!! Long term link to place SkipTest is called in the build log output.
399+
puts $ResultsFile " <td>${TestCaseName}</td>"
400+
}
396401
puts $ResultsFile " <td ${StatusClass}>$TestStatus</td>"
397402
if { $TestReport eq "REPORT" } {
398403
puts $ResultsFile " <td ${PassedClass}>[dict get $TestResults AffirmCount]</td>"

ReportBuildYaml2Dict.tcl

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -205,11 +205,18 @@ proc ElaborateTestSuites {TestDict} {
205205
} else {
206206
set SuiteElapsedTime 0
207207
}
208-
if { $SuitePassed > 0 && $SuiteFailed == 0 } {
209-
set SuiteStatus "PASSED"
210-
} else {
208+
if {$SuiteFailed > 0} {
211209
set SuiteStatus "FAILED"
212210
set BuildStatus "FAILED"
211+
} elseif { $SuitePassed > 0 } {
212+
set SuiteStatus "PASSED"
213+
} elseif { $SuiteSkipped > 0 } {
214+
set SuiteStatus "SKIPPED"
215+
} else {
216+
set SuiteStatus "EMPTY"
217+
if {$::osvvm::FailOnEmptyTestSuite} {
218+
set BuildStatus "FAILED"
219+
}
213220
}
214221
set SuiteDict [dict create Name $SuiteName]
215222
dict append SuiteDict Status $SuiteStatus

0 commit comments

Comments
 (0)