Set up Github Actions CI (#440)

* Adjust tests: update Pip URLs, update expected output to match newer code
* Test library: improve failure message to eliminate the illusion of extra leading space in "actual" output
* Use Bats 1.2.0 like Pyenv
* Install greadlink for old MacOS
* Delete duplicate test
This commit is contained in:
native-api
2022-10-12 21:30:36 +03:00
committed by GitHub
parent 4054162a1c
commit 0a1839d22a
6 changed files with 51 additions and 40 deletions

37
.github/workflows/tests.yml vendored Normal file
View File

@@ -0,0 +1,37 @@
name: tests
on: [pull_request, push]
jobs:
tests:
strategy:
fail-fast: false
matrix:
os:
- ubuntu-22.04
- ubuntu-20.04
- macos-12
- macos-11
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v2
# Normally, we would use the superbly maintained...
# - uses: actions/setup-python@v2
# with:
# python-version: ${{ matrix.python-version }}
# ... but in the repo, we want to test pyenv builds on Ubuntu
# - run: |
# sudo apt-get install -y build-essential libssl-dev zlib1g-dev libbz2-dev \
# libreadline-dev libsqlite3-dev wget curl llvm libncurses5-dev libncursesw5-dev \
# xz-utils tk-dev libffi-dev liblzma-dev python-openssl git
# https://github.com/pyenv/pyenv#installation
#- env:
# PYENV_ROOT: /home/runner/work/pyenv/pyenv
# run: |
# echo $PYENV_ROOT
# echo "$PYENV_ROOT/shims:$PYENV_ROOT/bin" >> $GITHUB_PATH
# macos-11 Github Actions env has an old `readlink` and lacks `greadlink` which causes Bats to break
- run: |
if [[ $RUNNER_OS == "macOS" ]] && [[ $(sw_vers -productVersion | awk -F. '{print $1}') -lt 12 ]]; then
brew install coreutils
fi
- run: git clone https://github.com/bats-core/bats-core.git --depth=1 -b v1.2.0 bats
- run: bats/bin/bats --tap test