name: Test OSX

on:  [push, pull_request]

jobs:
  build:
    runs-on: macOS-latest

    strategy:
      fail-fast: false
      matrix:
        python-version: [3.8.10]
        cxx: [clang++]
        std: [c++11, c++14] # TODO: c++17 is failing !

    steps:
    - uses: actions/checkout@v5
    - name: setup python
      uses: actions/setup-python@v6
      with:
        python-version: ${{ matrix.python-version }}
    - name: setup prerequisites
      run: |
        brew install boost
        python -m pip install --upgrade pip
        python -m pip install setuptools faber
    - name: build
      run: |
        python --version
        ${{ matrix.cxx }} --version
        brew info boost
        faber -v
        sed -e "s/\$PYTHON/python/g" .ci/faber > ~/.faber
        faber \
          --with-boost-include=$(brew --prefix boost)/include \
          --builddir=build \
          cxx.name=${{ matrix.cxx }} \
          cxxflags=-std=${{ matrix.std }} \
          cppflags=-std=${{ matrix.std }} \
          -j`sysctl -n hw.ncpu`
    - name: test
      run: |
        faber \
          --with-boost-include=$(brew --prefix boost)/include \
          --builddir=build\
          cxx.name=${{ matrix.cxx }} \
          cxxflags=-std=${{ matrix.std }} \
          cppflags=-std=${{ matrix.std }} \
          -j`sysctl -n hw.ncpu` \
          test.report
