diff options
| author | Marta Rybczynska <rybczynska@gmail.com> | 2024-08-14 07:30:41 +0200 |
|---|---|---|
| committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2024-08-20 14:12:40 +0100 |
| commit | 39de8c65492a8b84494abc3f890744f89af70a36 (patch) | |
| tree | 6af76ed6287e238d7631bf1aca42260a71c1a4ff /meta/lib | |
| parent | 72dd8c0d56379fcb6566f5b2fc53e7d1456a27d8 (diff) | |
| download | poky-39de8c65492a8b84494abc3f890744f89af70a36.tar.gz | |
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>
Diffstat (limited to 'meta/lib')
| -rw-r--r-- | meta/lib/oeqa/selftest/cases/cve_check.py | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/meta/lib/oeqa/selftest/cases/cve_check.py b/meta/lib/oeqa/selftest/cases/cve_check.py index a40272c919..3dd3e89d3e 100644 --- a/meta/lib/oeqa/selftest/cases/cve_check.py +++ b/meta/lib/oeqa/selftest/cases/cve_check.py | |||
| @@ -72,6 +72,54 @@ class CVECheck(OESelftestTestCase): | |||
| 72 | self.assertEqual(convert_cve_version("6.2_rc8"), "6.2-rc8") | 72 | self.assertEqual(convert_cve_version("6.2_rc8"), "6.2-rc8") |
| 73 | self.assertEqual(convert_cve_version("6.2_rc31"), "6.2-rc31") | 73 | self.assertEqual(convert_cve_version("6.2_rc31"), "6.2-rc31") |
| 74 | 74 | ||
| 75 | def test_product_match(self): | ||
| 76 | from oe.cve_check import has_cve_product_match | ||
| 77 | |||
| 78 | status = {} | ||
| 79 | status["detail"] = "ignored" | ||
| 80 | status["vendor"] = "*" | ||
| 81 | status["product"] = "*" | ||
| 82 | status["description"] = "" | ||
| 83 | status["mapping"] = "" | ||
| 84 | |||
| 85 | self.assertEqual(has_cve_product_match(status, "some_vendor:some_product"), True) | ||
| 86 | self.assertEqual(has_cve_product_match(status, "*:*"), True) | ||
| 87 | self.assertEqual(has_cve_product_match(status, "some_product"), True) | ||
| 88 | self.assertEqual(has_cve_product_match(status, "glibc"), True) | ||
| 89 | self.assertEqual(has_cve_product_match(status, "glibca"), True) | ||
| 90 | self.assertEqual(has_cve_product_match(status, "aglibc"), True) | ||
| 91 | self.assertEqual(has_cve_product_match(status, "*"), True) | ||
| 92 | self.assertEqual(has_cve_product_match(status, "aglibc glibc test:test"), True) | ||
| 93 | |||
| 94 | status["product"] = "glibc" | ||
| 95 | self.assertEqual(has_cve_product_match(status, "some_vendor:some_product"), False) | ||
| 96 | # The CPE in the recipe must be defined, no * accepted | ||
| 97 | self.assertEqual(has_cve_product_match(status, "*:*"), False) | ||
| 98 | self.assertEqual(has_cve_product_match(status, "*"), False) | ||
| 99 | self.assertEqual(has_cve_product_match(status, "some_product"), False) | ||
| 100 | self.assertEqual(has_cve_product_match(status, "glibc"), True) | ||
| 101 | self.assertEqual(has_cve_product_match(status, "glibca"), False) | ||
| 102 | self.assertEqual(has_cve_product_match(status, "aglibc"), False) | ||
| 103 | self.assertEqual(has_cve_product_match(status, "some_vendor:glibc"), True) | ||
| 104 | self.assertEqual(has_cve_product_match(status, "some_vendor:glibc test"), True) | ||
| 105 | self.assertEqual(has_cve_product_match(status, "test some_vendor:glibc"), True) | ||
| 106 | |||
| 107 | status["vendor"] = "glibca" | ||
| 108 | status["product"] = "glibc" | ||
| 109 | self.assertEqual(has_cve_product_match(status, "some_vendor:some_product"), False) | ||
| 110 | # The CPE in the recipe must be defined, no * accepted | ||
| 111 | self.assertEqual(has_cve_product_match(status, "*:*"), False) | ||
| 112 | self.assertEqual(has_cve_product_match(status, "*"), False) | ||
| 113 | self.assertEqual(has_cve_product_match(status, "some_product"), False) | ||
| 114 | self.assertEqual(has_cve_product_match(status, "glibc"), False) | ||
| 115 | self.assertEqual(has_cve_product_match(status, "glibca"), False) | ||
| 116 | self.assertEqual(has_cve_product_match(status, "aglibc"), False) | ||
| 117 | self.assertEqual(has_cve_product_match(status, "some_vendor:glibc"), False) | ||
| 118 | self.assertEqual(has_cve_product_match(status, "glibca:glibc"), True) | ||
| 119 | self.assertEqual(has_cve_product_match(status, "test:test glibca:glibc"), True) | ||
| 120 | self.assertEqual(has_cve_product_match(status, "test glibca:glibc"), True) | ||
| 121 | self.assertEqual(has_cve_product_match(status, "glibca:glibc test"), True) | ||
| 122 | |||
| 75 | 123 | ||
| 76 | def test_recipe_report_json(self): | 124 | def test_recipe_report_json(self): |
| 77 | config = """ | 125 | config = """ |
