.github: workflows: Workflow for build_helpers

PR #63195 has managed to change code under test without
triggering those tests.

This change should remedy that by creating a new workflow,
based on twister_tests.yaml, that runs tests in
scripts/tests/build_helpers if build_helpers are modified.

Such a workflow should be easily extendable if we ever have more
non-Twister things to test in scripts/pylib.

Signed-off-by: Lukasz Mrugala <lukaszx.mrugala@intel.com>
diff --git a/.github/workflows/pylib_tests.yml b/.github/workflows/pylib_tests.yml
new file mode 100644
index 0000000..06f61f3
--- /dev/null
+++ b/.github/workflows/pylib_tests.yml
@@ -0,0 +1,54 @@
+# Copyright (c) 2023 Intel Corporation.
+# SPDX-License-Identifier: Apache-2.0
+
+name: Misc. Pylib Scripts TestSuite
+
+on:
+  push:
+    branches:
+    - main
+    - v*-branch
+    paths:
+    - 'scripts/pylib/build_helpers/**'
+    - '.github/workflows/pylib_tests.yml'
+  pull_request:
+    branches:
+    - main
+    - v*-branch
+    paths:
+    - 'scripts/pylib/build_helpers/**'
+    - '.github/workflows/pylib_tests.yml'
+
+jobs:
+  pylib-tests:
+    name: Misc. Pylib Unit Tests
+    runs-on: ${{ matrix.os }}
+    strategy:
+      matrix:
+        python-version: [3.8, 3.9, '3.10']
+        os: [ubuntu-22.04]
+    steps:
+    - name: checkout
+      uses: actions/checkout@v3
+    - name: Set up Python ${{ matrix.python-version }}
+      uses: actions/setup-python@v4
+      with:
+        python-version: ${{ matrix.python-version }}
+    - name: cache-pip-linux
+      if: startsWith(runner.os, 'Linux')
+      uses: actions/cache@v3
+      with:
+        path: ~/.cache/pip
+        key: ${{ runner.os }}-pip-${{ matrix.python-version }}
+        restore-keys: |
+          ${{ runner.os }}-pip-${{ matrix.python-version }}
+    - name: install-packages
+      run: |
+        pip3 install -r scripts/requirements-base.txt -r scripts/requirements-build-test.txt
+    - name: Run pytest for build_helpers
+      env:
+        ZEPHYR_BASE: ./
+        ZEPHYR_TOOLCHAIN_VARIANT: zephyr
+      run: |
+        echo "Run build_helpers tests"
+        PYTHONPATH=./scripts/tests pytest ./scripts/tests/build_helpers
diff --git a/scripts/tests/twister/test_domains.py b/scripts/tests/build_helpers/test_domains.py
similarity index 98%
rename from scripts/tests/twister/test_domains.py
rename to scripts/tests/build_helpers/test_domains.py
index 2222b14..0ebdeaf 100644
--- a/scripts/tests/twister/test_domains.py
+++ b/scripts/tests/build_helpers/test_domains.py
@@ -12,7 +12,7 @@
 import sys
 
 ZEPHYR_BASE = os.getenv("ZEPHYR_BASE")
-sys.path.insert(0, os.path.join(ZEPHYR_BASE, "scripts/pylib/twister"))
+sys.path.insert(0, os.path.join(ZEPHYR_BASE, "scripts/pylib/build_helpers"))
 
 import domains