Skip to content

Commit

Permalink
[FIXED JENKINS-34678] Use selected emulator executable when listing s…
Browse files Browse the repository at this point in the history
…napshots.
  • Loading branch information
orrc committed Dec 3, 2017
1 parent 512f24f commit 7eca585
Show file tree
Hide file tree
Showing 4 changed files with 17 additions and 11 deletions.
Expand Up @@ -414,8 +414,9 @@ public boolean hasExistingSnapshot(Launcher launcher, AndroidSdk androidSdk)
// List available snapshots for this emulator
ByteArrayOutputStream listOutput = new ByteArrayOutputStream();

final Tool executable = androidSdk.requiresAndroidBug34233Workaround() ? Tool.EMULATOR_ARM : getExecutable();
final SdkCliCommand sdkEmulatorListSnapshotsCmd = SdkCliCommandFactory.getCommandsForSdk(androidSdk)
.getEmulatorListSnapshotsCommand(getAvdName(), androidSdk.requiresAndroidBug34233Workaround());
.getEmulatorListSnapshotsCommand(getAvdName(), executable);
Utils.runAndroidTool(launcher, listOutput, logger, androidSdk, sdkEmulatorListSnapshotsCmd, null);

// Check whether a Jenkins snapshot was listed in the output
Expand Down
@@ -1,5 +1,7 @@
package hudson.plugins.android_emulator.sdk.cli;

import hudson.plugins.android_emulator.sdk.Tool;

import java.util.List;

/**
Expand Down Expand Up @@ -29,7 +31,7 @@ SdkCliCommand getCreatedAvdCommand(final String avdName, final boolean createSna
*/
SdkCliCommand getCreateSdkCardCommand(final String absolutePathToSdCard, final String requestedSdCardSize);

SdkCliCommand getEmulatorListSnapshotsCommand(final String avdName, final boolean useArmEmulator);
SdkCliCommand getEmulatorListSnapshotsCommand(final String avdName, final Tool executable);

SdkCliCommand getAdbStartServerCommand();
SdkCliCommand getAdbKillServerCommand();
Expand Down
Expand Up @@ -140,9 +140,8 @@ public SdkCliCommand getCreateSdkCardCommand(final String absolutePathToSdCard,
}

@Override
public SdkCliCommand getEmulatorListSnapshotsCommand(final String avdName, final boolean useArmEmulator) {
public SdkCliCommand getEmulatorListSnapshotsCommand(final String avdName, final Tool executable) {
final String emulatorListSnapshotArgs = String.format("-snapshot-list -no-window -avd %s", avdName);
final Tool executable = useArmEmulator ? Tool.EMULATOR_ARM : Tool.EMULATOR;
return new SdkCliCommand(executable, emulatorListSnapshotArgs);
}

Expand Down
Expand Up @@ -360,15 +360,19 @@ public void testCreateSdkCardCommand() {

@Test
public void testEmulatorListSnapshotsCommand() {
final SdkCliCommand emulatorListSnapshotsCmdV25_3 = SdkCliCommandFactory.getCommandsForSdk("25.3").getEmulatorListSnapshotsCommand("avdtest", true);
final SdkCliCommand emulatorListSnapshotsCmdV25 = SdkCliCommandFactory.getCommandsForSdk("25").getEmulatorListSnapshotsCommand("avdtest", true);
final SdkCliCommand emulatorListSnapshotsCmdV17 = SdkCliCommandFactory.getCommandsForSdk("17").getEmulatorListSnapshotsCommand("dummy", false);
final SdkCliCommand emulatorListSnapshotsCmdV04 = SdkCliCommandFactory.getCommandsForSdk("4").getEmulatorListSnapshotsCommand("test", true);

assertEquals(Tool.EMULATOR_ARM, emulatorListSnapshotsCmdV25_3.getTool());
final SdkCliCommand emulatorListSnapshotsCmdV25_3 = SdkCliCommandFactory.getCommandsForSdk("25.3")
.getEmulatorListSnapshotsCommand("avdtest", Tool.EMULATOR64_X86);
final SdkCliCommand emulatorListSnapshotsCmdV25 = SdkCliCommandFactory.getCommandsForSdk("25")
.getEmulatorListSnapshotsCommand("avdtest", Tool.EMULATOR_ARM);
final SdkCliCommand emulatorListSnapshotsCmdV17 = SdkCliCommandFactory.getCommandsForSdk("17")
.getEmulatorListSnapshotsCommand("dummy", Tool.EMULATOR);
final SdkCliCommand emulatorListSnapshotsCmdV04 = SdkCliCommandFactory.getCommandsForSdk("4")
.getEmulatorListSnapshotsCommand("test", Tool.EMULATOR);

assertEquals(Tool.EMULATOR64_X86, emulatorListSnapshotsCmdV25_3.getTool());
assertEquals(Tool.EMULATOR_ARM, emulatorListSnapshotsCmdV25.getTool());
assertEquals(Tool.EMULATOR, emulatorListSnapshotsCmdV17.getTool());
assertEquals(Tool.EMULATOR_ARM, emulatorListSnapshotsCmdV04.getTool());
assertEquals(Tool.EMULATOR, emulatorListSnapshotsCmdV04.getTool());

assertEquals("-snapshot-list -no-window -avd avdtest", emulatorListSnapshotsCmdV25_3.getArgs());
assertEquals("-snapshot-list -no-window -avd avdtest", emulatorListSnapshotsCmdV25.getArgs());
Expand Down

0 comments on commit 7eca585

Please sign in to comment.