Browse Source

CI: Add workflow for CLI testing (#7357)

Create GitHub Actions cli test workflow and remove travis runs of 'qmk pytest'
Joel Challis 5 years ago
parent
commit
75e7018f72
3 changed files with 29 additions and 8 deletions
  1. 28 0
      .github/workflows/cli.yml
  2. 1 1
      lib/python/qmk/tests/test_cli_commands.py
  3. 0 7
      util/travis_test.sh

+ 28 - 0
.github/workflows/cli.yml

@@ -0,0 +1,28 @@
+name: CLI CI
+
+on:
+  push:
+    branches:
+    - master
+    - future
+  pull_request:
+    paths:
+    - 'lib/python/**'
+    - 'bin/qmk'
+    - 'requirements.txt'
+    - '.github/workflows/cli.yml'
+
+jobs:
+  test:
+    runs-on: ubuntu-latest
+
+    container: qmkfm/base_container
+
+    steps:
+    - uses: actions/checkout@v1
+      with:
+        submodules: recursive
+    - name: Install dependencies
+      run: pip3 install -r requirements.txt
+    - name: Run tests
+      run: bin/qmk pytest

+ 1 - 1
lib/python/qmk/tests/test_cli_commands.py

@@ -30,7 +30,7 @@ def test_kle2json():
 
 
 
 
 def test_doctor():
 def test_doctor():
-    result = check_subcommand('doctor')
+    result = check_subcommand('doctor', '-n')
     assert result.returncode == 0
     assert result.returncode == 0
     assert 'QMK Doctor is checking your environment.' in result.stderr
     assert 'QMK Doctor is checking your environment.' in result.stderr
     assert 'QMK is ready to go' in result.stderr
     assert 'QMK is ready to go' in result.stderr

+ 0 - 7
util/travis_test.sh

@@ -3,7 +3,6 @@
 source util/travis_utils.sh
 source util/travis_utils.sh
 
 
 NUM_CORE_CHANGES=$(echo "$QMK_CHANGES" | grep -Ecv -e '^(docs/)' -e '^(keyboards/)' -e '^(layouts/)' -e '^(util/)' -e '^(lib/python/)' -e '^(bin/qmk)' -e '^(requirements.txt)' -e '(.travis.yml)')
 NUM_CORE_CHANGES=$(echo "$QMK_CHANGES" | grep -Ecv -e '^(docs/)' -e '^(keyboards/)' -e '^(layouts/)' -e '^(util/)' -e '^(lib/python/)' -e '^(bin/qmk)' -e '^(requirements.txt)' -e '(.travis.yml)')
-NUM_PY_CHANGES=$(echo "$QMK_CHANGES" | grep -Ec -e '^(lib/python/)' -e '^(bin/qmk)')
 
 
 if [[ "$TRAVIS_COMMIT_MESSAGE" == *"[skip test]"* ]]; then
 if [[ "$TRAVIS_COMMIT_MESSAGE" == *"[skip test]"* ]]; then
     echo "Skipping due to commit message"
     echo "Skipping due to commit message"
@@ -19,10 +18,4 @@ if [ "$LOCAL_BRANCH" == "master" ] || [ "$NUM_CORE_CHANGES" != "0" ]; then
 
 
 fi
 fi
 
 
-if [ "$LOCAL_BRANCH" == "master" ] || [ "$NUM_PY_CHANGES" != "0" ]; then
-    echo "Running python tests."
-    qmk pytest
-    : $((exit_code = $exit_code + $?))
-fi
-
 exit $exit_code
 exit $exit_code