Skip to content

Commit 233b542

Browse files
committed
[xaprepare] Combine 'AndroidTestDependencies' and 'EmulatorTestDependencies' scenarios.
1 parent 462d776 commit 233b542

File tree

5 files changed

+16
-30
lines changed

5 files changed

+16
-30
lines changed

build-tools/automation/azure-pipelines.yaml

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -120,11 +120,7 @@ stages:
120120
installLegacyDotNet: false
121121
restoreNUnitConsole: false
122122
updateMono: false
123-
124-
- template: yaml-templates/run-xaprepare.yaml
125-
parameters:
126-
displayName: install emulator
127-
arguments: --s=EmulatorTestDependencies --android-sdk-platforms="$(DefaultTestSdkPlatforms)"
123+
xaprepareScenario: EmulatorTestDependencies
128124

129125
- task: DownloadPipelineArtifact@2
130126
inputs:

build-tools/automation/yaml-templates/setup-test-environment.yaml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@ parameters:
1212
androidSdkPlatforms: $(DefaultTestSdkPlatforms)
1313
repositoryAlias: 'self'
1414
commit: ''
15+
xaprepareScenario: AndroidTestDependencies # Use 'EmulatorTestDependencies' for agents that need the emulator installed
1516

1617
steps:
1718

@@ -69,7 +70,7 @@ steps:
6970

7071
- template: run-xaprepare.yaml
7172
parameters:
72-
arguments: --s=AndroidTestDependencies --android-sdk-platforms="${{ parameters.androidSdkPlatforms }}"
73+
arguments: --s=${{ parameters.xaprepareScenario }} --android-sdk-platforms="${{ parameters.androidSdkPlatforms }}"
7374
xaSourcePath: ${{ parameters.xaSourcePath }}
7475

7576
- ${{ if eq(parameters.restoreNUnitConsole, true) }}:

build-tools/automation/yaml-templates/stage-msbuild-emulator-tests.yaml

Lines changed: 2 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -39,11 +39,7 @@ stages:
3939
xaSourcePath: ${{ parameters.xaSourcePath }}
4040
repositoryAlias: ${{ parameters.repositoryAlias }}
4141
commit: ${{ parameters.commit }}
42-
43-
- template: run-xaprepare.yaml
44-
parameters:
45-
displayName: install emulator
46-
arguments: --s=EmulatorTestDependencies --android-sdk-platforms="$(DefaultTestSdkPlatforms)"
42+
xaprepareScenario: EmulatorTestDependencies
4743

4844
- task: DownloadPipelineArtifact@2
4945
inputs:
@@ -96,17 +92,13 @@ stages:
9692
xaSourcePath: ${{ parameters.xaSourcePath }}
9793
repositoryAlias: ${{ parameters.repositoryAlias }}
9894
commit: ${{ parameters.commit }}
95+
xaprepareScenario: EmulatorTestDependencies
9996

10097
- template: run-xaprepare.yaml
10198
parameters:
10299
displayName: install required brew tools and prepare java.interop
103100
arguments: --s=Required --auto-provision=yes --auto-provision-uses-sudo=yes
104101

105-
- template: run-xaprepare.yaml
106-
parameters:
107-
displayName: install emulator
108-
arguments: --s=EmulatorTestDependencies --android-sdk-platforms="$(androidSdkPlatforms)"
109-
110102
- script: echo "##vso[task.setvariable variable=Java8SdkDirectory]$JAVA_HOME_8_X64"
111103
displayName: set Java8SdkDirectory
112104

build-tools/xaprepare/xaprepare/Scenarios/Scenario_AndroidTestDependencies.cs

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,16 +5,22 @@ namespace Xamarin.Android.Prepare
55
[Scenario (isDefault: false)]
66
partial class Scenario_AndroidTestDependencies : ScenarioNoStandardEndSteps
77
{
8+
protected virtual AndroidToolchainComponentType AndroidSdkNdkType => AndroidToolchainComponentType.CoreDependency;
9+
810
public Scenario_AndroidTestDependencies ()
911
: base ("AndroidTestDependencies", "Install Android SDK, OpenJDK and .NET preview test dependencies.")
1012
{}
1113

14+
protected Scenario_AndroidTestDependencies (string name, string description)
15+
: base (name, description)
16+
{}
17+
1218
protected override void AddSteps (Context context)
1319
{
1420
Steps.Add (new Step_InstallDotNetPreview ());
1521
Steps.Add (new Step_InstallAdoptOpenJDK8 ());
1622
Steps.Add (new Step_InstallMicrosoftOpenJDK11 ());
17-
Steps.Add (new Step_Android_SDK_NDK (AndroidToolchainComponentType.CoreDependency));
23+
Steps.Add (new Step_Android_SDK_NDK (AndroidSdkNdkType));
1824

1925
// disable installation of missing programs...
2026
context.SetCondition (KnownConditions.AllowProgramInstallation, false);

build-tools/xaprepare/xaprepare/Scenarios/Scenario_EmulatorTestDependencies.cs

Lines changed: 4 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -3,21 +3,12 @@
33
namespace Xamarin.Android.Prepare
44
{
55
[Scenario (isDefault: false)]
6-
partial class Scenario_EmulatorTestDependencies : ScenarioNoStandardEndSteps
6+
partial class Scenario_EmulatorTestDependencies : Scenario_AndroidTestDependencies
77
{
8+
protected override AndroidToolchainComponentType AndroidSdkNdkType => AndroidToolchainComponentType.CoreDependency | AndroidToolchainComponentType.EmulatorDependency;
9+
810
public Scenario_EmulatorTestDependencies ()
9-
: base ("EmulatorTestDependencies", "Install Android SDK emulator dependencies.")
11+
: base ("EmulatorTestDependencies", "Install Android SDK (with emulator), OpenJDK, and .NET preview test dependencies.")
1012
{}
11-
12-
protected override void AddSteps (Context context)
13-
{
14-
Steps.Add (new Step_Android_SDK_NDK (AndroidToolchainComponentType.EmulatorDependency));
15-
16-
// disable installation of missing programs...
17-
context.SetCondition (KnownConditions.AllowProgramInstallation, false);
18-
19-
// ...but do not signal an error when any are missing
20-
context.SetCondition (KnownConditions.IgnoreMissingPrograms, true);
21-
}
2213
}
2314
}

0 commit comments

Comments
 (0)