diff --git a/build/ci/.azure-devops-macos.yml b/build/ci/.azure-devops-macos.yml index e35d4d15818b..d5bfdcf33b1d 100644 --- a/build/ci/.azure-devops-macos.yml +++ b/build/ci/.azure-devops-macos.yml @@ -76,6 +76,65 @@ jobs: PathtoPublish: $(build.artifactstagingdirectory) ArtifactName: uno-macos-artifacts ArtifactType: Container + +- job: macOS_Runtime_Tests + timeoutInMinutes: 90 + condition: eq(1,2) + displayName: macOS SamplesApp Runtime Tests + + variables: + CI_Build: true + SourceLinkEnabled: false + NUGET_PACKAGES: $(build.sourcesdirectory)/.nuget + + dependsOn: macOS + + pool: + vmImage: ${{ parameters.vmImage }} + + steps: + - checkout: none + clean: true + + - template: templates/dotnet-install.yml + - template: templates/optimize-roslyn-mono.yml + + - template: templates/nuget-cache.yml + parameters: + nugetPackages: $(NUGET_PACKAGES) + + - task: DownloadBuildArtifacts@0 + inputs: + artifactName: uno-macos-artifacts + downloadPath: '$(build.sourcesdirectory)/build' + + - task: PowerShell@2 + displayName: 'Install coreutils' + inputs: + targetType: inline + script: | + brew install coreutils + + - script: | + cd $(build.sourcesdirectory)/build/uno-macos-artifacts + installer -pkg SamplesApp.macOS-1.0.pkg -target CurrentUserHomeDirectory + + displayName: Install SamplesApp + + - script: | + timeout 70m /Applications/SamplesApp.macOS.app/Contents/MacOS/SamplesApp.macOS --runtime-tests=$(build.sourcesdirectory)/build/macOS-runtime-tests-results.xml + + displayName: Run macOS Runtime Tests + + - task: PublishTestResults@2 + displayName: Publish macOS Runtime Tests + condition: always() + inputs: + testRunTitle: 'macOS Runtime Tests' + testResultsFormat: 'NUnit' + testResultsFiles: '$(build.sourcesdirectory)/build/macOS-runtime-tests-results.xml' + failTaskOnFailedTests: true + - job: macOS_Screenshot_Tests timeoutInMinutes: 90 displayName: macOS SamplesApp Screenshot Test