From c1b286b599ccf2b7366506cd3b95a18197364ac5 Mon Sep 17 00:00:00 2001 From: palash018 <109908523+palash018@users.noreply.github.com> Date: Tue, 1 Oct 2024 18:33:05 +0530 Subject: [PATCH] [Feature] Run pre-commit hooks as part of GitHub actions (#222) * added pre-commit * added pre-commit to actions * added pre-commit (pyest) * added pre-commit to actions * added pre-commit (pyest) --- .github/workflows/github-actions.yml | 28 ++++++++++++++++++++++++++++ src/utils/interaction.py | 12 ++++++++---- 2 files changed, 36 insertions(+), 4 deletions(-) create mode 100644 .github/workflows/github-actions.yml diff --git a/.github/workflows/github-actions.yml b/.github/workflows/github-actions.yml new file mode 100644 index 00000000..d8b51887 --- /dev/null +++ b/.github/workflows/github-actions.yml @@ -0,0 +1,28 @@ +name: CI + +on: + push: + branches: "**" + pull_request: + branches: "**" + +env: + OMR_CHECKER_CONTAINER: true + +jobs: + pre-commit: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v3 + - name: Set up Python + uses: actions/setup-python@v4 + with: + python-version: "3.x" + - name: Install dependencies + run: | + python -m pip install --upgrade pip + pip install -r requirements.dev.txt + pip install pre-commit + - name: Run pre-commit + run: | + pre-commit run diff --git a/src/utils/interaction.py b/src/utils/interaction.py index d626273e..d49df27e 100644 --- a/src/utils/interaction.py +++ b/src/utils/interaction.py @@ -2,19 +2,21 @@ import cv2 from matplotlib import pyplot -from screeninfo import get_monitors - +from screeninfo import Monitor, get_monitors +import os from src.utils.constants import WAIT_KEYS from src.utils.drawing import DrawingUtils from src.utils.image import ImageUtils from src.utils.logger import logger -monitor_window = get_monitors()[0] - @dataclass class ImageMetrics: # TODO: fix window metrics doesn't account for the doc/taskbar on macos + if os.environ.get("OMR_CHECKER_CONTAINER"): + monitor_window = Monitor(0, 0, 1000, 1000, 100, 100, "FakeMonitor", False) + else: + monitor_window = get_monitors()[0] window_width, window_height = monitor_window.width, monitor_window.height # for positioning image windows window_x, window_y = 0, 0 @@ -113,6 +115,8 @@ def show( config=None, ): image_metrics = InteractionUtils.image_metrics + if os.environ.get("OMR_CHECKER_CONTAINER"): + return if image is None: logger.warning(f"'{name}' - NoneType image to show!") if pause: