From beb88dc4a946d8230710621f3538ecd4381598b2 Mon Sep 17 00:00:00 2001 From: Yi-Ling Chuang Date: Sat, 22 Jan 2022 18:38:39 +0800 Subject: [PATCH] Fix SliceContextualCardRendererTest Fixes: 215046609 Test: robotest Change-Id: I6b48d3b0739fe64a2380426efa03acd1971cd6b1 --- .../SliceContextualCardRendererTest.java | 29 +++++++++++++++++-- 1 file changed, 26 insertions(+), 3 deletions(-) diff --git a/tests/robotests/src/com/android/settings/homepage/contextualcards/slices/SliceContextualCardRendererTest.java b/tests/robotests/src/com/android/settings/homepage/contextualcards/slices/SliceContextualCardRendererTest.java index b1c74ca34d7..cf8d36190c7 100644 --- a/tests/robotests/src/com/android/settings/homepage/contextualcards/slices/SliceContextualCardRendererTest.java +++ b/tests/robotests/src/com/android/settings/homepage/contextualcards/slices/SliceContextualCardRendererTest.java @@ -26,19 +26,25 @@ import static org.mockito.Mockito.spy; import static org.mockito.Mockito.verify; import android.app.Activity; +import android.app.PendingIntent; +import android.content.Intent; import android.net.Uri; import android.view.LayoutInflater; import android.view.View; import android.widget.Button; +import androidx.core.graphics.drawable.IconCompat; import androidx.lifecycle.LifecycleOwner; import androidx.lifecycle.LiveData; import androidx.recyclerview.widget.LinearLayoutManager; import androidx.recyclerview.widget.RecyclerView; +import androidx.slice.builders.ListBuilder; +import androidx.slice.builders.SliceAction; import androidx.slice.Slice; import androidx.slice.SliceProvider; import androidx.slice.widget.SliceLiveData; + import com.android.settings.R; import com.android.settings.homepage.contextualcards.ContextualCard; import com.android.settings.homepage.contextualcards.ContextualCardsFragment; @@ -46,7 +52,6 @@ import com.android.settings.homepage.contextualcards.ControllerRendererPool; import com.android.settings.wifi.slice.ContextualWifiSlice; import org.junit.Before; -import org.junit.Ignore; import org.junit.Test; import org.junit.runner.RunWith; import org.mockito.Mock; @@ -56,7 +61,6 @@ import org.robolectric.RobolectricTestRunner; import org.robolectric.android.controller.ActivityController; @RunWith(RobolectricTestRunner.class) -@Ignore public class SliceContextualCardRendererTest { private static final Uri TEST_SLICE_URI = Uri.parse("content://test/test"); @@ -287,7 +291,7 @@ public class SliceContextualCardRendererTest { } private ContextualCard buildContextualCard(Uri sliceUri) { - final Slice slice = new ContextualWifiSlice(mActivity).getSlice(); + final Slice slice = buildSlice(); return new ContextualCard.Builder() .setName("test_name") .setCardType(ContextualCard.CardType.SLICE) @@ -296,4 +300,23 @@ public class SliceContextualCardRendererTest { .setSlice(slice) .build(); } + + private Slice buildSlice() { + final String title = "test_title"; + final IconCompat icon = IconCompat.createWithResource(mActivity, R.drawable.empty_icon); + final PendingIntent pendingIntent = PendingIntent.getActivity( + mActivity, + title.hashCode() /* requestCode */, + new Intent("test action"), + PendingIntent.FLAG_IMMUTABLE); + final SliceAction action + = SliceAction.createDeeplink(pendingIntent, icon, ListBuilder.SMALL_IMAGE, title); + return new ListBuilder(mActivity, TEST_SLICE_URI, ListBuilder.INFINITY) + .addRow(new ListBuilder.RowBuilder() + .addEndItem(icon, ListBuilder.ICON_IMAGE) + .setTitle(title) + .setPrimaryAction(action)) + .addAction(SliceAction.createToggle(pendingIntent, null /* actionTitle */, true)) + .build(); + } }