CI: Run Prysk tests for clean utility #6
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Run Tests | |
on: push | |
jobs: | |
build: | |
name: Test LaTeX Bundle | |
runs-on: macos-latest | |
steps: | |
- name: Checkout code | |
uses: actions/checkout@v3 | |
- name: Install Skim | |
run: brew install --cask skim | |
- name: Install and open TextMate | |
run: | | |
brew install TextMate | |
mkdir -p "$HOME/Library/Application Support/TextMate" | |
mkdir -p "$HOME/Library/Application Support/TextMate/Managed" | |
mkdir -p "$HOME/Library/Application Support/TextMate/Managed/Bundles" | |
pushd "$HOME/Library/Application Support/TextMate/Managed/Bundles" | |
for bundle in css html java javascript javadoc python r sql; do | |
gh repo clone "textmate/$bundle.tmbundle" | |
done | |
open /Applications/TextMate.app | |
popd | |
env: | |
GH_TOKEN: ${{ github.token }} | |
- name: Install BasicTeX | |
run: | | |
brew install basictex | |
- name: Install TeX packages | |
run: | | |
eval "$(/usr/libexec/path_helper)" | |
sudo tlmgr update --self | |
sudo tlmgr install --with-doc \ | |
biber \ | |
biblatex \ | |
csquotes \ | |
ctablestack \ | |
datatool \ | |
framed \ | |
glossaries \ | |
latexmk \ | |
logreq \ | |
luacode \ | |
mfirstuc \ | |
substr \ | |
supertabular \ | |
texdoc \ | |
texdoctk \ | |
upmethodology \ | |
xfor \ | |
xstring | |
- name: Install required Python packages for LaTeX bundle | |
run: /usr/bin/pip3 install pyobjc | |
- name: Install required Python packages for testing | |
run: pip install prysk | |
- name: Install tools required for tests | |
run: | | |
brew install pidof | |
brew install boost capnp google-sparsehash multimarkdown ninja ragel | |
git clone --recursive https://github.com/textmate/textmate.git | |
cd textmate | |
echo > local.rave "add FLAGS \"-I$(brew --prefix)/include\"" | |
echo >> local.rave "add LN_FLAGS \"-L$(brew --prefix)/lib\"" | |
export builddir="${PWD}/build" | |
gtm="${PWD}/build/release/Applications/gtm/gtm" | |
entitlements="${PWD}/entitlements.plist" | |
mkdir -p "$builddir" | |
./configure | |
ninja gtm | |
# Work around error about different Team IDs for mapping process/file | |
codesign --remove-signature "${gtm}" | |
defaults write "${entitlements}" \ | |
com.apple.security.cs.disable-library-validation -bool true | |
plutil -convert xml1 "${entitlements}" | |
codesign --sign - --force --options runtime --timestamp \ | |
--entitlements "${entitlements}" "${gtm}" | |
mv "${gtm}" /usr/local/bin | |
- name: Run Prysk tests for clean utility | |
run: cd Tests/Prysk/Ruby/clean && prysk *.t |