# Copyright (c) Microsoft Corporation. # Licensed under the MIT License. # # http://go.microsoft.com/fwlink/?LinkID=615560 name: 'CTest (Windows)' on: push: branches: [ "main" ] pull_request: branches: [ "main" ] paths-ignore: - '*.md' - LICENSE - '.nuget/*' - build/*.yml jobs: build: runs-on: ${{ matrix.os }} timeout-minutes: 20 strategy: fail-fast: false matrix: os: [windows-2019, windows-2022] build_type: [x64-Debug, x64-Release, x64-Debug-Clang, x64-Release-Clang] arch: [amd64] include: - os: windows-2019 build_type: x86-Debug arch: amd64_x86 - os: windows-2019 build_type: x86-Release arch: amd64_x86 - os: windows-2019 build_type: x86-Debug-Clang arch: amd64_x86 - os: windows-2019 build_type: x86-Release-Clang arch: amd64_x86 - os: windows-2022 build_type: x86-Debug arch: amd64_x86 - os: windows-2022 build_type: x86-Release arch: amd64_x86 - os: windows-2022 build_type: x86-Debug-Clang arch: amd64_x86 - os: windows-2022 build_type: x86-Release-Clang arch: amd64_x86 - os: windows-2022 build_type: arm64-Debug arch: amd64_arm64 - os: windows-2022 build_type: arm64-Release arch: amd64_arm64 - os: windows-2022 build_type: arm64ec-Debug arch: amd64_arm64 - os: windows-2022 build_type: arm64ec-Release arch: amd64_arm64 steps: - uses: actions/checkout@v4 - name: Clone test repository uses: actions/checkout@v4 with: repository: walbourn/directxmathtest path: Tests ref: main - name: 'Install Ninja' run: choco install ninja - uses: ilammy/msvc-dev-cmd@v1 with: arch: ${{ matrix.arch }} - name: 'Configure CMake' working-directory: ${{ github.workspace }} run: cmake --preset=${{ matrix.build_type }} -DBUILD_TESTING=ON - name: 'Build' working-directory: ${{ github.workspace }} run: cmake --build out\build\${{ matrix.build_type }} - if: (matrix.build_type == 'x64-Release') || (matrix.build_type == 'x86-Release') timeout-minutes: 10 name: 'Test' working-directory: ${{ github.workspace }} run: ctest --preset=${{ matrix.build_type }}