mirror of
https://github.com/ghndrx/prowler.git
synced 2026-02-10 06:45:08 +00:00
42 lines
1.4 KiB
Python
42 lines
1.4 KiB
Python
from unittest import mock
|
|
|
|
from requests import Response
|
|
|
|
from prowler.config.config import check_current_version
|
|
from prowler.providers.aws.aws_provider import get_aws_available_regions
|
|
|
|
MOCK_PROWLER_VERSION = "3.3.0"
|
|
MOCK_OLD_PROWLER_VERSION = "0.0.0"
|
|
|
|
|
|
def mock_prowler_get_latest_release(_):
|
|
"""Mock requests.get() to get the Prowler latest release"""
|
|
response = Response()
|
|
response._content = b'[{"name":"3.3.0"}]'
|
|
return response
|
|
|
|
|
|
class Test_Config:
|
|
def test_get_aws_available_regions(self):
|
|
assert len(get_aws_available_regions()) == 31
|
|
|
|
@mock.patch(
|
|
"prowler.config.config.requests.get", new=mock_prowler_get_latest_release
|
|
)
|
|
@mock.patch("prowler.config.config.prowler_version", new=MOCK_PROWLER_VERSION)
|
|
def test_check_current_version_with_latest(self):
|
|
assert (
|
|
check_current_version()
|
|
== f"Prowler {MOCK_PROWLER_VERSION} (it is the latest version, yay!)"
|
|
)
|
|
|
|
@mock.patch(
|
|
"prowler.config.config.requests.get", new=mock_prowler_get_latest_release
|
|
)
|
|
@mock.patch("prowler.config.config.prowler_version", new=MOCK_OLD_PROWLER_VERSION)
|
|
def test_check_current_version_with_old(self):
|
|
assert (
|
|
check_current_version()
|
|
== f"Prowler {MOCK_OLD_PROWLER_VERSION} (latest is {MOCK_PROWLER_VERSION}, upgrade for the latest features)"
|
|
)
|