diff options
author | Stas Negara <snegara@google.com> | 2015-04-30 15:59:53 -0700 |
---|---|---|
committer | Stas Negara <snegara@google.com> | 2015-05-05 15:55:32 -0700 |
commit | be9df783298c3d80fe31aaebe25f34862cc014d2 (patch) | |
tree | b352a8af4f340cc772603de0bce544ae81857ec7 | |
parent | 81597f2898bb4a179cb43a52352739b6e2669b0a (diff) | |
download | testing-be9df783298c3d80fe31aaebe25f34862cc014d2.tar.gz |
Support showing cloud device configuration in devices table.
Also, change the display format of a cloud configuration.
Change-Id: Idc93752847b9cbc70803baef376e25411a38abab
-rw-r--r-- | src/com/google/gct/testing/CloudConfigurationProviderImpl.java | 23 | ||||
-rw-r--r-- | src/com/google/gct/testing/CloudDevice.png | bin | 0 -> 362 bytes | |||
-rw-r--r-- | src/com/google/gct/testing/ConfigurationInstance.java | 2 | ||||
-rw-r--r-- | src/com/google/gct/testing/GhostCloudDevice.java | 8 |
4 files changed, 30 insertions, 3 deletions
diff --git a/src/com/google/gct/testing/CloudConfigurationProviderImpl.java b/src/com/google/gct/testing/CloudConfigurationProviderImpl.java index ceebb4f..5b0f92d 100644 --- a/src/com/google/gct/testing/CloudConfigurationProviderImpl.java +++ b/src/com/google/gct/testing/CloudConfigurationProviderImpl.java @@ -58,6 +58,7 @@ import org.jetbrains.android.run.testing.AndroidTestRunConfiguration; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; +import javax.imageio.ImageIO; import javax.swing.*; import java.io.File; import java.io.FilenameFilter; @@ -376,6 +377,28 @@ public class CloudConfigurationProviderImpl extends CloudConfigurationProvider { } } + @Nullable + @Override + public Icon getCloudDeviceIcon() { + try { + return new ImageIcon(ImageIO.read(CloudConfigurationProviderImpl.class.getResourceAsStream("CloudDevice.png"))); + } catch (Throwable e) { + return null; + } + } + + @Nullable + @Override + public String getCloudDeviceConfiguration(IDevice device) { + String encodedConfigurationInstance = device instanceof GhostCloudDevice + ? ((GhostCloudDevice)device).getEncodedConfigurationInstance() + : serialNumberToConfigurationInstance.get(device.getSerialNumber()); + if (encodedConfigurationInstance != null) { + return ConfigurationInstance.parseFromEncodedString(encodedConfigurationInstance).getResultsViewerDisplayString(); + } + return null; + } + private void showCloudDevicePollingError(Exception e, String deviceId) { CloudTestingUtils.showErrorMessage(null, "Error polling for a cloud device", "Failed to connect to a cloud device!\n" + "Exception while polling for a cloud device\n\n" + diff --git a/src/com/google/gct/testing/CloudDevice.png b/src/com/google/gct/testing/CloudDevice.png Binary files differnew file mode 100644 index 0000000..a28379a --- /dev/null +++ b/src/com/google/gct/testing/CloudDevice.png diff --git a/src/com/google/gct/testing/ConfigurationInstance.java b/src/com/google/gct/testing/ConfigurationInstance.java index 3020a20..66cd276 100644 --- a/src/com/google/gct/testing/ConfigurationInstance.java +++ b/src/com/google/gct/testing/ConfigurationInstance.java @@ -48,7 +48,7 @@ public class ConfigurationInstance { return input.getId(); } }; - public static final String DISPLAY_NAME_DELIMITER = " | "; + public static final String DISPLAY_NAME_DELIMITER = ", "; public static final String ENCODED_NAME_DELIMITER = "-"; private final Map<String, CloudTestingType> typesByDimensionName = new LinkedHashMap<String, CloudTestingType>(); diff --git a/src/com/google/gct/testing/GhostCloudDevice.java b/src/com/google/gct/testing/GhostCloudDevice.java index cdaa3c1..7425ebf 100644 --- a/src/com/google/gct/testing/GhostCloudDevice.java +++ b/src/com/google/gct/testing/GhostCloudDevice.java @@ -40,9 +40,13 @@ public class GhostCloudDevice implements IDevice { @NonNull @Override public String getSerialNumber() { + return "N/A"; + } + + public String getEncodedConfigurationInstance() { AndroidDevice androidDevice = device.getAndroidDevice(); - return (androidDevice.getAndroidModelId() + "-" + androidDevice.getAndroidVersionId() + "-" + - androidDevice.getLocale() + "-" + androidDevice.getOrientation()).toLowerCase(); + return androidDevice.getAndroidModelId() + "-" + androidDevice.getAndroidVersionId() + "-" + + androidDevice.getLocale() + "-" + androidDevice.getOrientation(); } @Nullable |