Skip to content

Commit

Permalink
v9.5.1
Browse files Browse the repository at this point in the history
  • Loading branch information
GitRon committed Feb 28, 2024
1 parent 8984333 commit 7ed777c
Show file tree
Hide file tree
Showing 7 changed files with 62 additions and 4 deletions.
1 change: 1 addition & 0 deletions .ambient-package-update/metadata.py
Original file line number Diff line number Diff line change
Expand Up @@ -63,6 +63,7 @@
"dev": [
*DEV_DEPENDENCIES,
"gevent~=23.9",
"httpx~=0.27",
],
"drf": [
"djangorestframework>=3.8.2",
Expand Down
3 changes: 3 additions & 0 deletions CHANGES.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,8 @@
# Changelog

**9.5.1** (2024-02-28)
* Fixed bug in coverage script that a set `GITLAB_CI_DISABLE_COVERAGE` would always skip coverage check

**9.5.0** (2024-02-02)
* Added django message test helper method `assert_message_not_in_request`

Expand Down
2 changes: 1 addition & 1 deletion ambient_toolbox/__init__.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
"""Python toolbox of Ambient Digital containing an abundance of useful tools and gadgets."""

__version__ = "9.5.0"
__version__ = "9.5.1"
15 changes: 14 additions & 1 deletion ambient_toolbox/gitlab/coverage.py
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,20 @@ def __init__(self) -> None:
)
self.pipelines_url_with_token = f"{self.pipelines_url}&private_token={self.token}"

self.disable_coverage: bool = os.environ.get("GITLAB_CI_DISABLE_COVERAGE", False)
self.disable_coverage: bool = self.get_disable_coverage(os.environ.get("GITLAB_CI_DISABLE_COVERAGE", "0"))

@staticmethod
def get_disable_coverage(disable_env: str) -> bool:
disable_coverage = disable_env

if disable_coverage.lower() == "true":
return True
elif disable_coverage.lower() == "false":
return False
elif disable_coverage.isdigit():
return bool(int(disable_coverage))
else:
return bool(disable_coverage)

def get_latest_target_branch_commit_sha(self) -> str:
"""
Expand Down
2 changes: 0 additions & 2 deletions pytest.init

This file was deleted.

Empty file added tests/gitlab/__init__.py
Empty file.
43 changes: 43 additions & 0 deletions tests/gitlab/test_coverage.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
from unittest import mock

from django.test import SimpleTestCase

from ambient_toolbox.gitlab.coverage import CoverageService


@mock.patch.dict("os.environ", {"CI_PIPELINE_ID": "17", "CI_PROJECT_ID": "27"})
class CoverageServiceTest(SimpleTestCase):
def test_get_disable_coverage_integer_false(self):
service = CoverageService()
result = service.get_disable_coverage(disable_env="0")

self.assertIsInstance(result, bool)
self.assertFalse(result)

def test_get_disable_coverage_integer_true(self):
service = CoverageService()
result = service.get_disable_coverage(disable_env="1")

self.assertIsInstance(result, bool)
self.assertTrue(result)

def test_get_disable_coverage_string_var_bool_false(self):
service = CoverageService()
result = service.get_disable_coverage(disable_env="False")

self.assertIsInstance(result, bool)
self.assertFalse(result)

def test_get_disable_coverage_string_var_bool_true(self):
service = CoverageService()
result = service.get_disable_coverage(disable_env="True")

self.assertIsInstance(result, bool)
self.assertTrue(result)

def test_get_disable_coverage_string_var_random(self):
service = CoverageService()
result = service.get_disable_coverage(disable_env="Wololo")

self.assertIsInstance(result, bool)
self.assertTrue(result)

0 comments on commit 7ed777c

Please sign in to comment.