name: CI

on: [push, pull_request]

jobs:
  test:
    runs-on: ubuntu-latest
    strategy:
      matrix:
        compiler: ['lualatex', 'pdflatex']
        faculty: ['eiti', 'meil']
        lang: ['eng','pol']
        thesis: ['EngineerThesis', 'MasterThesis']
      fail-fast: false
    steps:
      - name: Install LaTeX dependencies
        run: |
          sudo apt-get install -y   \
               biber                \
               latexmk              \
               python3-pip          \
               texlive              \
               texlive-bibtex-extra \
               texlive-fonts-extra  \
               texlive-latex-extra  \
               texlive-lang-polish  \
               texlive-luatex       \
               tex-gyre

      - name: Checkout WUT-Thesis repository
        uses: actions/checkout@v2

      - name: Install Python dependencies
        run: python3 -m pip install --user -r requirements.txt

      - name: Generate test cases
        run: scons generate_tests
        working-directory: latex

      - name: Generate PDF file
        run: cp test/${{matrix.lang}}/${{matrix.faculty}}/${{matrix.thesis}}.textest main.tex && scons all
        working-directory: latex

      - name: Verify build with referential text
        run: |
          scons test_pdf pdf=build/pdfs/${{matrix.compiler}}.pdf \
                ref=test/${{matrix.lang}}/${{matrix.faculty}}/${{matrix.thesis}}_${{matrix.compiler}}.txt
        working-directory: latex
