diff --git a/src/common/core/utils.py b/src/common/core/utils.py index 4b785b4..cdf8083 100644 --- a/src/common/core/utils.py +++ b/src/common/core/utils.py @@ -37,6 +37,10 @@ def is_saas() -> bool: return pathlib.Path("./SAAS_DEPLOYMENT").exists() +def is_oss() -> bool: + return not (is_enterprise() or is_saas()) + + @lru_cache() def has_email_provider() -> bool: match settings.EMAIL_BACKEND: diff --git a/tests/unit/common/core/test_utils.py b/tests/unit/common/core/test_utils.py index d715446..26cf3fe 100644 --- a/tests/unit/common/core/test_utils.py +++ b/tests/unit/common/core/test_utils.py @@ -10,6 +10,7 @@ get_version_info, has_email_provider, is_enterprise, + is_oss, is_saas, ) @@ -25,6 +26,27 @@ def clear_lru_caches() -> Generator[None, None, None]: is_saas.cache_clear() +def test__is_oss_for_enterprise_returns_false(fs: FakeFilesystem) -> None: + # Given + fs.create_file("./ENTERPRISE_VERSION") + + # Then + assert is_oss() is False + + +def test__is_oss_for_saas_returns_false(fs: FakeFilesystem) -> None: + # Given + fs.create_file("./SAAS_DEPLOYMENT") + + # Then + assert is_oss() is False + + +def test__is_oss_for_oss_returns_true(fs: FakeFilesystem) -> None: + # Then + assert is_oss() is True + + def test_get_version_info(fs: FakeFilesystem) -> None: # Given expected_manifest_contents = {