From d1f9cd16885ff125925a0fe453383874adddeb9c Mon Sep 17 00:00:00 2001 From: Maciej Sypien Date: Thu, 19 Sep 2024 14:43:40 +0200 Subject: [PATCH] feat: add dummy test for linux --- .github/workflows/github-actions.yml | 9 +++++ tests/linux_setup_plugin_and_run.sh | 54 ++++++++++++++++++++++++++++ 2 files changed, 63 insertions(+) create mode 100755 tests/linux_setup_plugin_and_run.sh diff --git a/.github/workflows/github-actions.yml b/.github/workflows/github-actions.yml index 6f76a98..5455322 100644 --- a/.github/workflows/github-actions.yml +++ b/.github/workflows/github-actions.yml @@ -20,3 +20,12 @@ jobs: uses: actions/checkout@main - name: lint files against shfmt run: make lint_shfmt + test-setup-linux: + runs-on: ubuntu-latest + steps: + - name: install soft + run: sudo apt install -y tmux git + - name: checkout repo + uses: actions/checkout@main + - name: test setup + run: ./tests/linux_setup_plugin_and_run.sh diff --git a/tests/linux_setup_plugin_and_run.sh b/tests/linux_setup_plugin_and_run.sh new file mode 100755 index 0000000..e202903 --- /dev/null +++ b/tests/linux_setup_plugin_and_run.sh @@ -0,0 +1,54 @@ +#!/bin/bash + +# this test is meant to run on linux +# +# test target is: +# - ubuntu 20.04 LTS +# - bash + +# default value of status-left section from gruvbox theme +readonly STATUS_LEFT_DEFAULT="#[bg=colour241,fg=colour248] #S #[bg=colour237,fg=colour241,nobold,noitalics,nounderscore]" + +main() { + if [[ "$(uname)" != "Linux" ]]; then + echo "NOT LINUX. Failed & exit." + exit 1 + fi + + sudo apt update -y + sudo apt install -y tmux git + + mkdir -p ~/.tmux/plugins/ + git clone https://github.com/tmux-plugins/tpm ~/.tmux/plugins/tpm + + cat <~/.tmux.conf +# List of plugins +set -g @plugin 'tmux-plugins/tpm' +set -g @plugin 'tmux-plugins/tmux-sensible' + +# Other plugins +set -g @plugin 'egel/tmux-gruvbox' +set -g @tmux-gruvbox 'dark' + +# Initialize TMUX plugin manager (keep this line at the very bottom of tmux.conf) +run '~/.tmux/plugins/tpm/tpm' +EOF + + cat ~/.tmux.conf + + # manually install plugins + bash -c "${HOME}/.tmux/plugins/tpm/scripts/install_plugins.sh install_plugins" + + # start new detached session + tmux new -d + + # get status of something from theme + _status_left_current=$(tmux show-option -g status-left) + if [[ "$STATUS_LEFT_DEFAULT" != "$_status_left_current" ]]; then + exit 1 + fi + + exit 0 +} + +main "$@"