mirror of
https://github.com/prowler-cloud/prowler.git
synced 2026-10-09 21:14:22 +00:00
feat(scan): execute all checks if no checks are provided (#5307)
This commit is contained in:
@@ -1,3 +1,5 @@
|
||||
from importlib.machinery import FileFinder
|
||||
from pkgutil import ModuleInfo
|
||||
from unittest import mock
|
||||
|
||||
import pytest
|
||||
@@ -69,6 +71,23 @@ def mock_generate_output():
|
||||
yield mock_gen_output
|
||||
|
||||
|
||||
@pytest.fixture
|
||||
def mock_list_modules():
|
||||
with mock.patch(
|
||||
"prowler.lib.check.utils.list_modules", autospec=True
|
||||
) as mock_list_mod:
|
||||
mock_list_mod.return_value = [
|
||||
ModuleInfo(
|
||||
module_finder=FileFinder(
|
||||
"/prowler/providers/aws/services/accessanalyzer/accessanalyzer_enabled"
|
||||
),
|
||||
name="prowler.providers.aws.services.accessanalyzer.accessanalyzer_enabled.accessanalyzer_enabled",
|
||||
ispkg=False,
|
||||
)
|
||||
]
|
||||
yield mock_list_mod
|
||||
|
||||
|
||||
class TestScan:
|
||||
def test_init(mock_provider):
|
||||
checks_to_execute = {
|
||||
@@ -205,6 +224,22 @@ class TestScan:
|
||||
assert scan.get_completed_services() == set()
|
||||
assert scan.get_completed_checks() == set()
|
||||
|
||||
def test_init_with_no_checks(mock_provider, mock_list_modules):
|
||||
checks_to_execute = set()
|
||||
mock_provider.type = "aws"
|
||||
|
||||
scan = Scan(mock_provider, checks_to_execute)
|
||||
|
||||
assert scan.provider == mock_provider
|
||||
assert scan.checks_to_execute == ["accessanalyzer_enabled"]
|
||||
assert scan.service_checks_to_execute == get_service_checks_to_execute(
|
||||
["accessanalyzer_enabled"]
|
||||
)
|
||||
assert scan.service_checks_completed == {}
|
||||
assert scan.progress == 0
|
||||
assert scan.get_completed_services() == set()
|
||||
assert scan.get_completed_checks() == set()
|
||||
|
||||
@patch("importlib.import_module")
|
||||
def test_scan(
|
||||
mock_import_module,
|
||||
|
||||
Reference in New Issue
Block a user