public void ImageScanResultGetCheckResultMessageWithAllIssuesTypes()
        {
            var scanResult = new ImageScanResult
            {
                Status   = ImageScanStatus.Succeeded,
                Counters = new[]
                {
                    new VulnerabilityCounter {
                        Severity = webapp.Database.Models.CveSeverity.Unknown, Count = 5
                    },
                    new VulnerabilityCounter {
                        Severity = webapp.Database.Models.CveSeverity.Medium, Count = 3
                    },
                    new VulnerabilityCounter {
                        Severity = webapp.Database.Models.CveSeverity.Critical, Count = 1
                    },
                    new VulnerabilityCounter {
                        Severity = webapp.Database.Models.CveSeverity.High, Count = 2
                    },
                    new VulnerabilityCounter {
                        Severity = webapp.Database.Models.CveSeverity.Low, Count = 4
                    },
                },
            };
            var expectedMessage = "1 Critical; 2 High; 3 Medium; 4 Low; 5 Unknown";

            scanResult.GetCheckResultMessage().Should().Be(expectedMessage);
        }
        public void ImageScanResultGetCheckResultValueSucceededWithoutCVE()
        {
            var scanResult = new ImageScanResult {
                Status = ImageScanStatus.Succeeded
            };

            scanResult.GetCheckResultValue().Should().Be(CheckValue.Succeeded);
        }
        public void ImageScanResultGetCheckResultValue_NotSucceededStatuses(ImageScanStatus status, CheckValue expectedValue)
        {
            var scanResult = new ImageScanResult {
                Status = status
            };

            scanResult.GetCheckResultValue().Should().Be(expectedValue);
        }
        public void ImageScanResultGetCheckResultMessageWithoutIssues(ImageScanStatus status, string expectedMessage)
        {
            var scanResult = new ImageScanResult
            {
                Status   = status,
                Counters = new VulnerabilityCounter[0],
            };

            scanResult.GetCheckResultMessage().Should().Be(expectedMessage);
        }
        public void ImageScanResultGetCheckResultValueSucceededWithCVE(webapp.Database.Models.CveSeverity severity, CheckValue expectedValue)
        {
            var scanResult = new ImageScanResult
            {
                Status   = ImageScanStatus.Succeeded,
                Counters = new[] { new VulnerabilityCounter {
                                       Severity = severity, Count = 1
                                   } },
            };

            scanResult.GetCheckResultValue().Should().Be(expectedValue);
        }
        public void ImageScanResultGetCheckResultMessageWithNotAllIssuesTypes()
        {
            var scanResult = new ImageScanResult
            {
                Status   = ImageScanStatus.Succeeded,
                Counters = new[]
                {
                    new VulnerabilityCounter {
                        Severity = webapp.Database.Models.CveSeverity.High, Count = 42
                    },
                    new VulnerabilityCounter {
                        Severity = webapp.Database.Models.CveSeverity.Low, Count = 1024
                    },
                },
            };
            var expectedMessage = "42 High; 1024 Low";

            scanResult.GetCheckResultMessage().Should().Be(expectedMessage);
        }