From f9fb58aec3f4deacf847651c055e00aee8b861a8 Mon Sep 17 00:00:00 2001 From: Debanjum Singh Solanky Date: Mon, 23 Jan 2023 19:42:46 -0300 Subject: [PATCH] Automate khoj.el testing using Github workflow Install transient.el dependency as it is not available by default before Emacs 28.1 --- .github/workflows/test_khoj_el.yml | 49 ++++++++++++++++++++++++++++++ 1 file changed, 49 insertions(+) create mode 100644 .github/workflows/test_khoj_el.yml diff --git a/.github/workflows/test_khoj_el.yml b/.github/workflows/test_khoj_el.yml new file mode 100644 index 00000000..eb1803c1 --- /dev/null +++ b/.github/workflows/test_khoj_el.yml @@ -0,0 +1,49 @@ +name: test khoj.el + +on: + push: + branches: + - 'master' + paths: + - src/interface/emacs/*.el + - src/interface/emacs/tests/*.el + - .github/workflows/test_khoj_el.yml + pull_request: + branches: + - 'master' + paths: + - src/interface/emacs/*.el + - src/interface/emacs/tests/*.el + - .github/workflows/test_khoj_el.yml + +jobs: + test: + runs-on: ubuntu-latest + strategy: + fail-fast: false + matrix: + emacs_version: + - 27.1 + - 27.2 + - 28.1 + - 28.2 + - snapshot + steps: + - uses: purcell/setup-emacs@master + with: + version: ${{ matrix.emacs_version }} + - uses: actions/checkout@v3 + - name: Test Khoj.el + run: | + # Run ERT tests on khoj.el + emacs -batch \ + --eval "(progn \ + (require 'package) \ + (push '(\"melpa\" . \"https://melpa.org/packages/\") package-archives) \ + (package-initialize) \ + (unless package-archive-contents (package-refresh-contents)) \ + (unless (package-installed-p 'transient) (package-install 'transient)))" \ + -l ert \ + -l ./src/interface/emacs/khoj.el \ + -l ./src/interface/emacs/tests/khoj-tests.el \ + -f ert-run-tests-batch-and-exit