Files
Johannes Engler a2824f7166 feat(stackit): add new provider with 4 checks (#9237)
Co-authored-by: Claude <noreply@anthropic.com>
Co-authored-by: Sergio Garcia <hello@mistercloudsec.com>
Co-authored-by: Hugo P.Brito <hugopbrit@gmail.com>
Co-authored-by: Hugo Pereira Brito <101209179+HugoPBrito@users.noreply.github.com>
2026-05-28 13:16:38 +02:00

69 lines
2.3 KiB
Python

import argparse
import pytest
from prowler.providers.stackit.lib.arguments.arguments import init_parser
@pytest.fixture
def parser():
parser = argparse.ArgumentParser()
parser.common_providers_parser = argparse.ArgumentParser(add_help=False)
parser.subparsers = parser.add_subparsers(dest="provider")
init_parser(parser)
return parser
class TestStackITArguments:
def test_project_id_argument_is_registered(self, parser):
args = parser.parse_args(
[
"stackit",
"--stackit-project-id",
"12345678-1234-1234-1234-123456789abc",
]
)
assert args.stackit_project_id == "12345678-1234-1234-1234-123456789abc"
def test_api_token_argument_is_not_registered(self, parser):
"""Tokens were removed in favour of the service account key file."""
with pytest.raises(SystemExit):
parser.parse_args(["stackit", "--stackit-api-token", "secret-token"])
def test_service_account_key_path_argument_is_registered(self, parser):
args = parser.parse_args(
[
"stackit",
"--stackit-service-account-key-path",
"/tmp/sa-key.json",
]
)
assert args.stackit_service_account_key_path == "/tmp/sa-key.json"
def test_service_account_key_path_defaults_to_none(self, parser):
args = parser.parse_args(["stackit"])
assert args.stackit_service_account_key_path is None
def test_service_account_key_argument_is_registered(self, parser):
args = parser.parse_args(
[
"stackit",
"--stackit-service-account-key",
'{"keyId": "abc"}',
]
)
assert args.stackit_service_account_key == '{"keyId": "abc"}'
def test_service_account_key_defaults_to_none(self, parser):
args = parser.parse_args(["stackit"])
assert args.stackit_service_account_key is None
def test_scan_unused_services_defaults_to_false(self, parser):
args = parser.parse_args(["stackit"])
assert args.scan_unused_services is False
def test_scan_unused_services_flag_sets_true(self, parser):
args = parser.parse_args(["stackit", "--scan-unused-services"])
assert args.scan_unused_services is True