navi/.github/workflows/shell-tests.yml
Gaurav11112003 e96ef1fbde Add tmux-driven shell plugin tests behind path-filtered CI.
Introduce tests/shell with bash/zsh/fish coverage and deterministic
fixtures; wire a shell-tests workflow gated on shell/ and tests/shell/.
Closes GH-1014. Covers GH-1010-style multiline snippet behavior.
2026-05-18 01:54:34 -05:00

50 lines
1.3 KiB
YAML

# Dedicated CI for the shell plugins under `shell/`.
#
# Lives in its own workflow with path filters so the extra zsh/fish/tmux
# install never slows down PRs that don't touch shell plugin code.
#
# Tracks issue: https://github.com/denisidoro/navi/issues/1014
on:
push:
paths:
- 'shell/**'
- 'tests/shell/**'
- '.github/workflows/shell-tests.yml'
pull_request:
branches: [master]
paths:
- 'shell/**'
- 'tests/shell/**'
- '.github/workflows/shell-tests.yml'
name: Shell plugin tests
jobs:
shell-tests:
name: Shell plugin tests
runs-on: ubuntu-latest
steps:
- name: Checkout sources
uses: actions/checkout@v4
- name: Install stable toolchain
uses: actions-rs/toolchain@v1
with:
profile: minimal
toolchain: stable
override: true
- name: Build navi (debug)
uses: actions-rs/cargo@v1
with:
command: build
- name: Install shell plugin deps (zsh, fish, tmux)
run: sudo apt-get update && sudo apt-get install -y zsh fish tmux
- name: Install fzf
run: git clone --depth 1 https://github.com/junegunn/fzf.git ~/.fzf; yes | ~/.fzf/install;
- name: Run shell plugin tests
run: ./tests/shell/run