Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
44 changes: 21 additions & 23 deletions build-tools/automation/azure-pipelines.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -1318,32 +1318,30 @@ stages:
jdkTestFolder: $(JAVA_HOME_8_X64)
provisionatorChannel: ${{ parameters.provisionatorChannel }}

- template: designer\android-designer-build-win.yaml@yaml
parameters:
designerSourcePath: $(System.DefaultWorkingDirectory)\UITools\Designer
uiToolsSourcePath: $(System.DefaultWorkingDirectory)\UITools
javaSdkDirectory: $(JAVA_HOME_8_X64)

- template: designer\android-designer-tests.yaml@yaml
parameters:
designerSourcePath: $(System.DefaultWorkingDirectory)\UITools\Designer

- task: CopyFiles@2
displayName: 'Copy binlogs'
- task: VSBuild@1
displayName: Restore Xamarin.AndroidDesigner
inputs:
sourceFolder: $(System.DefaultWorkingDirectory)\UITools\Designer\Xamarin.Designer.Android
contents: '**/*.binlog'
targetFolder: $(Build.ArtifactStagingDirectory)\designer-binlogs
overWrite: true
flattenFolders: true
condition: ne(variables['Agent.JobStatus'], 'Succeeded')
solution: $(System.DefaultWorkingDirectory)\UITools\Designer\Xamarin.Designer.Android\Xamarin.AndroidDesigner.sln
vsVersion: 17.0
msbuildArgs: >-
/t:Restore /p:RestoreDisableParallel=true
/p:RestoreConfigFile="$(System.DefaultWorkingDirectory)\UITools\NuGet.Config"
/p:JavaSdkDirectory="$(JAVA_HOME_8_X64)"
platform: Any CPU
configuration: DebugWin32

- task: VSBuild@1
displayName: Build Xamarin.AndroidDesigner
inputs:
solution: $(System.DefaultWorkingDirectory)\UITools\Designer\Xamarin.Designer.Android\Xamarin.AndroidDesigner.sln
vsVersion: 17.0
msbuildArgs: /t:Build
platform: Any CPU
configuration: DebugWin32

- template: yaml-templates/publish-artifact.yaml
- template: yaml-templates/run-designer-tests.yml
parameters:
displayName: upload designer binlogs
artifactName: Test Results - Designer - Windows
targetPath: $(Build.ArtifactStagingDirectory)\designer-binlogs
condition: ne(variables['Agent.JobStatus'], 'Succeeded')
designerSourcePath: $(System.DefaultWorkingDirectory)\UITools\Designer

- stage: bcl_tests
displayName: BCL Emulator Tests
Expand Down
76 changes: 76 additions & 0 deletions build-tools/automation/yaml-templates/run-designer-tests.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,76 @@
parameters:
designerSourcePath: $(System.DefaultWorkingDirectory)
nunitConsoleVersion: '3.9.0'
runAddinTests: true
testResultArtifactName: Test Results - Designer - Windows

steps:
- task: DeleteFiles@1
displayName: Delete Test Outputs
inputs:
SourceFolder: ${{ parameters.designerSourcePath }}/Xamarin.Designer.Android/Xamarin.AndroidDesigner.Tests
Contents: |
CustomControlsOutput
AndroidCustomControlsClass/obj
AndroidCustomControlsBinding/obj
AndroidCustomControls/obj
AndroidCustomControlsClass/bin
AndroidCustomControlsBinding/bin
AndroidCustomControls/bin

- task: NuGetCommand@2
displayName: Install NUnit.Console ${{ parameters.nunitConsoleVersion }}
inputs:
command: custom
arguments: install NUnit.Console -version ${{ parameters.nunitConsoleVersion }} -OutputDirectory ${{ parameters.designerSourcePath }}/packages

- powershell: |
$nunitConsole = [IO.Path]::Combine("${{ parameters.designerSourcePath }}", "packages", "NUnit.ConsoleRunner.${{ parameters.nunitConsoleVersion }}", "tools", "nunit3-console.exe")
if ([Environment]::OSVersion.Platform -eq "Unix")
{
mono64 "$nunitConsole" "-labels=All" "-result=TestResult_AndroidDesignerUnitTests.xml" "Xamarin.AndroidDesigner.UnitTests.dll"
}
else
{
."$nunitConsole" "-labels=All" "-result=TestResult_AndroidDesignerUnitTests.xml" "Xamarin.AndroidDesigner.UnitTests.dll"
}
displayName: Run Unit Tests
workingDirectory: ${{ parameters.designerSourcePath }}/Xamarin.Designer.Android/Xamarin.AndroidDesigner.Tests/bin-tests/Debug

- powershell: |
if ([Environment]::OSVersion.Platform -eq "Unix")
{
mono64 "--debug" "GuiUnit.exe" "-labels=All" "-result=TestResult_AndroidDesigner.xml" "Xamarin.AndroidDesigner.Tests.dll"
}
else
{
.\GuiUnit.exe "-labels=All" "-result=TestResult_AndroidDesigner.xml" "Xamarin.AndroidDesigner.Tests.dll"
}
displayName: Run GUI Tests
workingDirectory: ${{ parameters.designerSourcePath }}/Xamarin.Designer.Android/Xamarin.AndroidDesigner.Tests/bin/Debug
condition: false # https://dev.azure.com/devdiv/DevDiv/_workitems/edit/1583237

- task: PublishTestResults@2
displayName: Publish Core Unit Test Results
inputs:
testResultsFormat: NUnit
testResultsFiles: ${{ parameters.designerSourcePath }}/Xamarin.Designer.Android/Xamarin.AndroidDesigner.Tests/**/TestResult_*.xml
testRunTitle: Xamarin.AndroidDesigner.Tests
condition: succeededOrFailed()

- task: CopyFiles@2
displayName: 'Copy binlogs'
inputs:
sourceFolder: ${{ parameters.designerSourcePath }}/Xamarin.Designer.Android
contents: '**/*.binlog'
targetFolder: $(Build.ArtifactStagingDirectory)/designer-binlogs
overWrite: true
flattenFolders: true
condition: ne(variables['Agent.JobStatus'], 'Succeeded')

- template: publish-artifact.yaml
parameters:
displayName: upload designer binlogs
artifactName: ${{ parameters.testResultArtifactName }}
targetPath: $(Build.ArtifactStagingDirectory)/designer-binlogs
condition: ne(variables['Agent.JobStatus'], 'Succeeded')