Add missed constructor tests for TaskDescription
Add missed constructor tests for TaskDescription also refacor it.
Fix: 129199258
Test: atest TaskDescriptionTest
Change-Id: I520c244938e3931a35dcd3b2b77fe357c525b236
(cherry picked from commit 1b1977895d31da8ba1f26465a1cb32917e9e575f)
diff --git a/tests/app/src/android/app/cts/TaskDescriptionTest.java b/tests/app/src/android/app/cts/TaskDescriptionTest.java
index 86bdda5..fe06c4f 100644
--- a/tests/app/src/android/app/cts/TaskDescriptionTest.java
+++ b/tests/app/src/android/app/cts/TaskDescriptionTest.java
@@ -57,8 +57,8 @@
@Rule
public ActivityTestRule<MockActivity> mTaskDescriptionActivity =
- new ActivityTestRule<>(MockActivity.class,
- false /* initialTouchMode */, false /* launchActivity */);
+ new ActivityTestRule<>(MockActivity.class,
+ false /* initialTouchMode */, false /* launchActivity */);
@Test
public void testBitmapConstructor() throws Exception {
@@ -66,17 +66,37 @@
final Bitmap bitmap = Bitmap.createBitmap(1, 1, Bitmap.Config.ARGB_8888);
bitmap.eraseColor(0);
activity.setTaskDescription(new TaskDescription(TEST_LABEL, bitmap, TEST_COLOR));
- assertTaskDescription(activity, TEST_LABEL, TEST_NO_DATA);
+ assertTaskDescription(activity, TEST_LABEL, TEST_NO_DATA, bitmap);
+
+ activity.setTaskDescription(new TaskDescription(TEST_LABEL, bitmap));
+ assertTaskDescription(activity, TEST_LABEL, TEST_NO_DATA, bitmap);
}
@Test
public void testResourceConstructor() throws Exception {
final Activity activity = mTaskDescriptionActivity.launchActivity(null);
activity.setTaskDescription(new TaskDescription(TEST_LABEL, TEST_RES_DATA, TEST_COLOR));
- assertTaskDescription(activity, TEST_LABEL, TEST_RES_DATA);
+ assertTaskDescription(activity, TEST_LABEL, TEST_RES_DATA, null);
+
+ activity.setTaskDescription(new TaskDescription(TEST_LABEL, TEST_RES_DATA));
+ assertTaskDescription(activity, TEST_LABEL, TEST_RES_DATA, null);
}
- private void assertTaskDescription(Activity activity, String label, int resId) {
+ @Test
+ public void testLabelConstructor() throws Exception {
+ final Activity activity = mTaskDescriptionActivity.launchActivity(null);
+ activity.setTaskDescription(new TaskDescription(TEST_LABEL));
+ assertTaskDescription(activity, TEST_LABEL, TEST_NO_DATA, null);
+ }
+
+ @Test
+ public void testEmptyConstructor() throws Exception {
+ final Activity activity = mTaskDescriptionActivity.launchActivity(null);
+ activity.setTaskDescription(new TaskDescription());
+ assertTaskDescription(activity, null, TEST_NO_DATA, null);
+ }
+
+ private void assertTaskDescription(Activity activity, String label, int resId, Bitmap bitmap) {
final ActivityManager am = (ActivityManager) activity.getSystemService(ACTIVITY_SERVICE);
List<RecentTaskInfo> recentsTasks = am.getRecentTasks(1 /* maxNum */, 0 /* flags */);
if (!recentsTasks.isEmpty()) {
@@ -84,7 +104,7 @@
if (activity.getTaskId() == info.id) {
final TaskDescription td = info.taskDescription;
assertNotNull(td);
- if (resId == TEST_NO_DATA) {
+ if (bitmap != null) {
// TaskPersister at the worst case scenario waits 3 secs (PRE_TASK_DELAY_MS) to
// write the image to disk if its write time has ended
waitFor("TaskDescription's icon is null", () -> td.getIcon() != null);