name: CMake

on: [push, pull_request]

# on: 
#   push:
#     branches:    
#       - master        
#   pull_request:
#     branches:    
#       - master

jobs:
  build:
    runs-on: ${{ matrix.os }}
    strategy:
      matrix:
        os: [windows-2019]
        USE_MBEDTLS: ["ON", "OFF"]
        USE_CONTEXT: ["ON", "OFF"]
        CMAKE_OPTIONS:
          [
            "-DCOSE_C_INCLUDE_ENCRYPT=ON -DCOSE_C_INCLUDE_ENCRYPT0=OFF -DCOSE_C_INCLUDE_MAC0=OFF -DCOSE_C_INCLUDE_MAC=OFF -DCOSE_C_INCLUDE_SIGN=OFF -DCOSE_C_INCLUDE_SIGN1=OFF -DCOSE_C_INCLUDE_COUNTERSIGN=OFF",
          ]

    steps:
      - uses: actions/checkout@v1

      - name: setup (windows)
        if: startsWith(matrix.os, 'windows')
        run: |
          choco install openssl cmake

      - name: Create Build directory
        shell: bash
        run: |
          pwd
          echo "$GITHUB_WORKSPACE/build"
          cmake -E make_directory $GITHUB_WORKSPACE/build
          cd $GITHUB_WORKSPACE/build

      - name: Configure CMake
        shell: bash
        # working-directory: ${{runner.workspace}}/build
        run: |
          cd $GITHUB_WORKSPACE/build
          cmake $GITHUB_WORKSPACE \
          -DCOSE_C_USE_CONTEXT=${{matrix.USE_CONTEXT}} \
          -DCOSE_C_BUILD_DOCS=OFF \
          -DCOSE_C_COVERALLS=OFF \
          -DCOSE_C_BUILD_TESTS=ON \
          -DBUILD_SHARED_LIBS=OFF \
          -DCMAKE_BUILD_TYPE=Debug \
          ${{matrix.CMAKE_OPTIONS}} \
          -DCOSE_C_USE_MBEDTLS=${{matrix.USE_MBEDTLS}}

      - name: Build
        # working-directory: ${{runner.workspace}}/build
        shell: bash
        run: |
          cd $GITHUB_WORKSPACE/build
          cmake --build .

      - name: get test data
        # working-directory: ${{runner.workspace}}
        shell: bash
        run: |
          echo $GITHUB_WORKSPACE
          pwd
          cd $GITHUB_WORKSPACE
          pwd
          git clone --depth 1 git://github.com/cose-wg/Examples Examples
          ls -al

      - name: Test
        # working-directory: ${{runner.workspace}}/build
        shell: bash
        run: |
          pwd
          ls -al
          cd $GITHUB_WORKSPACE
          pwd
          ls -al
          cd $GITHUB_WORKSPACE/build
          ls -al
          ctest -C Debug --verbose

