mirror of
https://github.com/prowler-cloud/prowler.git
synced 2026-07-04 19:21:51 +00:00
8a1d7bcd6b
Co-authored-by: Daniel Barranquero <danielbo2001@gmail.com> Co-authored-by: Hugo P.Brito <hugopbrit@gmail.com>
47 lines
1.4 KiB
Python
47 lines
1.4 KiB
Python
from pathlib import Path
|
|
|
|
import pytest
|
|
|
|
from prowler.lib.check.models import CheckMetadata
|
|
|
|
EXPECTED_SERVICE_NAMES = {
|
|
"administration": "administration",
|
|
"compute": "compute",
|
|
"networking": "networking",
|
|
}
|
|
|
|
|
|
@pytest.mark.parametrize(
|
|
"metadata_file",
|
|
sorted(Path("prowler/providers/linode").glob("services/**/*.metadata.json")),
|
|
)
|
|
def test_linode_check_metadata_is_valid(metadata_file):
|
|
metadata = CheckMetadata.parse_file(metadata_file)
|
|
assert metadata.Provider == "linode"
|
|
assert metadata.CheckID == metadata_file.stem.replace(".metadata", "")
|
|
|
|
|
|
@pytest.mark.parametrize(
|
|
"metadata_file",
|
|
sorted(Path("prowler/providers/linode").glob("services/**/*.metadata.json")),
|
|
)
|
|
def test_linode_checks_metadata_use_canonical_hub_urls(metadata_file):
|
|
metadata = CheckMetadata.parse_file(metadata_file)
|
|
url = metadata.Remediation.Recommendation.Url
|
|
assert not url.startswith(
|
|
"https://hub.prowler.com/checks/linode/"
|
|
), f"{metadata_file}: non-canonical hub URL {url}"
|
|
|
|
|
|
@pytest.mark.parametrize(
|
|
"metadata_file",
|
|
sorted(Path("prowler/providers/linode").glob("services/**/*.metadata.json")),
|
|
)
|
|
def test_linode_check_metadata_uses_product_area_service_names(metadata_file):
|
|
metadata = CheckMetadata.parse_file(metadata_file)
|
|
service_folder = metadata_file.relative_to(
|
|
Path("prowler/providers/linode/services")
|
|
).parts[0]
|
|
|
|
assert metadata.ServiceName == EXPECTED_SERVICE_NAMES[service_folder]
|