diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 7add9e9..7d6a350 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -2,46 +2,32 @@ name: Test on: push: - branches: ["main"] + branches: [ "main" ] pull_request_target: - branches: ["main"] + branches: [ "main" ] # Allows you to run this workflow manually from the Actions tab workflow_dispatch: jobs: - setup: - runs-on: ubuntu-latest - outputs: - matrix: ${{ steps.setmatrix.outputs.matrix }} - steps: - - id: setmatrix - run: | - object="[{\"scheme\":\"YumemiWeather\",\"dir\":\".\"},{\"scheme\":\"Example\",\"dir\":\"Example\"}]" - echo "matrix=$object" >> $GITHUB_OUTPUT - test: - needs: setup + build: runs-on: macos-latest permissions: contents: read checks: write - strategy: - matrix: - config: ${{fromJson(needs.setup.outputs.matrix)}} steps: - name: Checkout uses: actions/checkout@v4 - name: Test env: + scheme: ${{ 'YumemiWeather' }} platform: ${{ 'iOS Simulator' }} run: | # xcrun xctrace returns via stderr, not the expected stdout (see https://developer.apple.com/forums/thread/663959) device=`xcrun xctrace list devices 2>&1 | grep -oE 'iPhone.*?[^\(]+' | head -1 | awk '{$1=$1;print}' | sed -e "s/ Simulator$//"` - cd ${{ matrix.config.dir }} - rm -rf "${{ matrix.config.scheme }}".xcresult - xcodebuild -scheme "${{ matrix.config.scheme }}" -resultBundlePath "${{ matrix.config.scheme }}".xcresult test -destination "platform=$platform,name=$device" - - name: Report + xcodebuild -scheme "$scheme" -resultBundlePath TestResults test -destination "platform=$platform,name=$device" + - name: Format uses: kishikawakatsumi/xcresulttool@v1 with: - path: ${{ matrix.config.scheme }}.xcresult + path: TestResults.xcresult if: success() || failure() diff --git a/.gitignore b/.gitignore index 48642dd..be1bf4d 100644 --- a/.gitignore +++ b/.gitignore @@ -5,8 +5,7 @@ xcuserdata/ DerivedData/ docs -/Example.xcresult # Xcode automatically generates this directory with a .xcworkspacedata file and xcuserdata # hence it is not needed unless you have added a package configuration file to your project -.swiftpm +.swiftpm \ No newline at end of file