Skip to content

Commit 7b2ade2

Browse files
committed
add tests
1 parent 8d6fb0a commit 7b2ade2

File tree

1 file changed

+22
-3
lines changed

1 file changed

+22
-3
lines changed

utils/results/common_test.go

Lines changed: 22 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -658,18 +658,25 @@ func TestGetFinalApplicabilityStatus(t *testing.T) {
658658
testCases := []struct {
659659
name string
660660
input []jasutils.ApplicabilityStatus
661+
hasRuns bool
661662
expectedOutput jasutils.ApplicabilityStatus
662663
}{
663664
{
664665
name: "applicable wins all statuses",
665-
input: []jasutils.ApplicabilityStatus{jasutils.ApplicabilityUndetermined, jasutils.Applicable, jasutils.NotCovered, jasutils.NotApplicable},
666+
hasRuns: true,
667+
input: []jasutils.ApplicabilityStatus{jasutils.ApplicabilityUndetermined, jasutils.NotScanned, jasutils.Applicable, jasutils.NotCovered, jasutils.NotApplicable},
666668
expectedOutput: jasutils.Applicable,
667669
},
668670
{
669671
name: "undetermined wins not covered",
670672
input: []jasutils.ApplicabilityStatus{jasutils.NotCovered, jasutils.ApplicabilityUndetermined, jasutils.NotCovered, jasutils.NotApplicable},
671673
expectedOutput: jasutils.ApplicabilityUndetermined,
672674
},
675+
{
676+
name: "missing context wins not covered",
677+
input: []jasutils.ApplicabilityStatus{jasutils.NotCovered, jasutils.MissingContext, jasutils.NotCovered, jasutils.NotApplicable},
678+
expectedOutput: jasutils.MissingContext,
679+
},
673680
{
674681
name: "not covered wins not applicable",
675682
input: []jasutils.ApplicabilityStatus{jasutils.NotApplicable, jasutils.NotCovered, jasutils.NotApplicable},
@@ -681,14 +688,26 @@ func TestGetFinalApplicabilityStatus(t *testing.T) {
681688
expectedOutput: jasutils.NotApplicable,
682689
},
683690
{
684-
name: "no statuses",
691+
name: "no statuses - no runs",
685692
input: []jasutils.ApplicabilityStatus{},
686693
expectedOutput: jasutils.NotScanned,
687694
},
695+
{
696+
name: "no statuses - has runs",
697+
input: []jasutils.ApplicabilityStatus{},
698+
hasRuns: true,
699+
expectedOutput: jasutils.NotCovered,
700+
},
701+
{
702+
name: "ignore not scanned statuses",
703+
input: []jasutils.ApplicabilityStatus{jasutils.NotScanned, jasutils.NotScanned},
704+
hasRuns: true,
705+
expectedOutput: jasutils.NotCovered,
706+
},
688707
}
689708
for _, tc := range testCases {
690709
t.Run(tc.name, func(t *testing.T) {
691-
assert.Equal(t, tc.expectedOutput, GetFinalApplicabilityStatus(tc.input))
710+
assert.Equal(t, tc.expectedOutput, GetFinalApplicabilityStatus(tc.hasRuns, tc.input))
692711
})
693712
}
694713
}

0 commit comments

Comments
 (0)