mirror of
https://git.yoctoproject.org/poky
synced 2026-04-26 09:32:14 +02:00
selftest: add test_product_match
CVECheck.test_product_match tests has_cve_product_match() (From OE-Core rev: 30ee6edc57ff7629a72606d1005f92d43a5d14f9) Signed-off-by: Marta Rybczynska <marta.rybczynska@syslinbit.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
committed by
Richard Purdie
parent
72dd8c0d56
commit
39de8c6549
@@ -72,6 +72,54 @@ class CVECheck(OESelftestTestCase):
|
||||
self.assertEqual(convert_cve_version("6.2_rc8"), "6.2-rc8")
|
||||
self.assertEqual(convert_cve_version("6.2_rc31"), "6.2-rc31")
|
||||
|
||||
def test_product_match(self):
|
||||
from oe.cve_check import has_cve_product_match
|
||||
|
||||
status = {}
|
||||
status["detail"] = "ignored"
|
||||
status["vendor"] = "*"
|
||||
status["product"] = "*"
|
||||
status["description"] = ""
|
||||
status["mapping"] = ""
|
||||
|
||||
self.assertEqual(has_cve_product_match(status, "some_vendor:some_product"), True)
|
||||
self.assertEqual(has_cve_product_match(status, "*:*"), True)
|
||||
self.assertEqual(has_cve_product_match(status, "some_product"), True)
|
||||
self.assertEqual(has_cve_product_match(status, "glibc"), True)
|
||||
self.assertEqual(has_cve_product_match(status, "glibca"), True)
|
||||
self.assertEqual(has_cve_product_match(status, "aglibc"), True)
|
||||
self.assertEqual(has_cve_product_match(status, "*"), True)
|
||||
self.assertEqual(has_cve_product_match(status, "aglibc glibc test:test"), True)
|
||||
|
||||
status["product"] = "glibc"
|
||||
self.assertEqual(has_cve_product_match(status, "some_vendor:some_product"), False)
|
||||
# The CPE in the recipe must be defined, no * accepted
|
||||
self.assertEqual(has_cve_product_match(status, "*:*"), False)
|
||||
self.assertEqual(has_cve_product_match(status, "*"), False)
|
||||
self.assertEqual(has_cve_product_match(status, "some_product"), False)
|
||||
self.assertEqual(has_cve_product_match(status, "glibc"), True)
|
||||
self.assertEqual(has_cve_product_match(status, "glibca"), False)
|
||||
self.assertEqual(has_cve_product_match(status, "aglibc"), False)
|
||||
self.assertEqual(has_cve_product_match(status, "some_vendor:glibc"), True)
|
||||
self.assertEqual(has_cve_product_match(status, "some_vendor:glibc test"), True)
|
||||
self.assertEqual(has_cve_product_match(status, "test some_vendor:glibc"), True)
|
||||
|
||||
status["vendor"] = "glibca"
|
||||
status["product"] = "glibc"
|
||||
self.assertEqual(has_cve_product_match(status, "some_vendor:some_product"), False)
|
||||
# The CPE in the recipe must be defined, no * accepted
|
||||
self.assertEqual(has_cve_product_match(status, "*:*"), False)
|
||||
self.assertEqual(has_cve_product_match(status, "*"), False)
|
||||
self.assertEqual(has_cve_product_match(status, "some_product"), False)
|
||||
self.assertEqual(has_cve_product_match(status, "glibc"), False)
|
||||
self.assertEqual(has_cve_product_match(status, "glibca"), False)
|
||||
self.assertEqual(has_cve_product_match(status, "aglibc"), False)
|
||||
self.assertEqual(has_cve_product_match(status, "some_vendor:glibc"), False)
|
||||
self.assertEqual(has_cve_product_match(status, "glibca:glibc"), True)
|
||||
self.assertEqual(has_cve_product_match(status, "test:test glibca:glibc"), True)
|
||||
self.assertEqual(has_cve_product_match(status, "test glibca:glibc"), True)
|
||||
self.assertEqual(has_cve_product_match(status, "glibca:glibc test"), True)
|
||||
|
||||
|
||||
def test_recipe_report_json(self):
|
||||
config = """
|
||||
|
||||
Reference in New Issue
Block a user