Snap for 8618009 from 3faf777d580a46cd1e4a51e346edfaf0cf493327 to tm-frc-ipsec-release Change-Id: I938c421cec784fcb1537836bab5f60231e4aa7bc
diff --git a/tests/src/android/cts/statsd/atom/DeviceAtomTestCase.java b/tests/src/android/cts/statsd/atom/DeviceAtomTestCase.java index 03facd0..dacbac9 100644 --- a/tests/src/android/cts/statsd/atom/DeviceAtomTestCase.java +++ b/tests/src/android/cts/statsd/atom/DeviceAtomTestCase.java
@@ -167,14 +167,24 @@ */ protected int getUid() throws Exception { int currentUser = getDevice().getCurrentUser(); - String uidLine = getDevice().executeShellCommand("cmd package list packages -U --user " - + currentUser + " " + DEVICE_SIDE_TEST_PACKAGE); - String[] uidLineParts = uidLine.split(":"); - // 3rd entry is package uid - assertThat(uidLineParts.length).isGreaterThan(2); - int uid = Integer.parseInt(uidLineParts[2].trim()); - assertThat(uid).isGreaterThan(10000); - return uid; + final String packages = getDevice().executeShellCommand("cmd package list packages -U" + + " --user " + currentUser + " " + DEVICE_SIDE_TEST_PACKAGE); + + // Split package list by lines + // Sample packages response: + // package:com.android.server.cts.device.statsd.host uid:1010033 + // package:com.android.server.cts.device.statsd uid:1010034 + final String[] lines = packages.split("[\\r\\n]+"); + for (final String line : lines) { + if (line.startsWith("package:" + DEVICE_SIDE_TEST_PACKAGE + " ")) { + final int uidIndex = line.lastIndexOf(":") + 1; + final int uid = Integer.parseInt(line.substring(uidIndex).trim()); + assertThat(uid).isGreaterThan(10_000); + return uid; + } + } + throw new Error( + String.format("Could not find installed package: %s", DEVICE_SIDE_TEST_PACKAGE)); } /**