Loading src/com/android/settings/homepage/contextualcards/EligibleCardChecker.java +7 −0 Original line number Diff line number Diff line Loading @@ -18,6 +18,8 @@ package com.android.settings.homepage.contextualcards; import static android.app.slice.Slice.HINT_ERROR; import static com.android.settings.intelligence.ContextualCardProto.ContextualCard.Category.STICKY_VALUE; import android.app.settings.SettingsEnums; import android.content.ContentResolver; import android.content.Context; Loading Loading @@ -94,6 +96,11 @@ public class EligibleCardChecker implements Callable<ContextualCard> { return false; } if (card.getCategory() == STICKY_VALUE) { Log.d(TAG, "Sticky card, skip checking. Uri = " + card.getSliceUri()); return true; } final Slice slice = bindSlice(uri); if (isSliceToggleable(slice)) { Loading tests/robotests/src/com/android/settings/homepage/contextualcards/EligibleCardCheckerTest.java +30 −0 Original line number Diff line number Diff line Loading @@ -18,11 +18,15 @@ package com.android.settings.homepage.contextualcards; import static android.app.slice.Slice.HINT_ERROR; import static com.android.settings.intelligence.ContextualCardProto.ContextualCard.Category.STICKY_VALUE; import static com.google.common.truth.Truth.assertThat; import static org.mockito.ArgumentMatchers.any; import static org.mockito.Mockito.doReturn; import static org.mockito.Mockito.never; import static org.mockito.Mockito.spy; import static org.mockito.Mockito.verify; import android.content.Context; import android.net.Uri; Loading Loading @@ -64,6 +68,32 @@ public class EligibleCardCheckerTest { assertThat(mEligibleCardChecker.isSliceToggleable(slice)).isTrue(); } @Test public void isCardEligibleToDisplay_stickyCard_returnTrue() { final ContextualCard card = new ContextualCard.Builder() .setName("test_card") .setCardType(ContextualCard.CardType.SLICE) .setCategory(STICKY_VALUE) .setSliceUri(CustomSliceRegistry.FLASHLIGHT_SLICE_URI) .build(); assertThat(mEligibleCardChecker.isCardEligibleToDisplay(card)).isTrue(); } @Test public void isCardEligibleToDisplay_stickyCard_shouldNotPrebind() { final ContextualCard card = new ContextualCard.Builder() .setName("test_card") .setCardType(ContextualCard.CardType.SLICE) .setCategory(STICKY_VALUE) .setSliceUri(CustomSliceRegistry.FLASHLIGHT_SLICE_URI) .build(); mEligibleCardChecker.isCardEligibleToDisplay(card); verify(mEligibleCardChecker, never()).bindSlice(CustomSliceRegistry.FLASHLIGHT_SLICE_URI); } @Test public void isCardEligibleToDisplay_toggleSlice_hasInlineActionShouldBeTrue() { final ContextualWifiSlice wifiSlice = new ContextualWifiSlice(mContext); Loading Loading
src/com/android/settings/homepage/contextualcards/EligibleCardChecker.java +7 −0 Original line number Diff line number Diff line Loading @@ -18,6 +18,8 @@ package com.android.settings.homepage.contextualcards; import static android.app.slice.Slice.HINT_ERROR; import static com.android.settings.intelligence.ContextualCardProto.ContextualCard.Category.STICKY_VALUE; import android.app.settings.SettingsEnums; import android.content.ContentResolver; import android.content.Context; Loading Loading @@ -94,6 +96,11 @@ public class EligibleCardChecker implements Callable<ContextualCard> { return false; } if (card.getCategory() == STICKY_VALUE) { Log.d(TAG, "Sticky card, skip checking. Uri = " + card.getSliceUri()); return true; } final Slice slice = bindSlice(uri); if (isSliceToggleable(slice)) { Loading
tests/robotests/src/com/android/settings/homepage/contextualcards/EligibleCardCheckerTest.java +30 −0 Original line number Diff line number Diff line Loading @@ -18,11 +18,15 @@ package com.android.settings.homepage.contextualcards; import static android.app.slice.Slice.HINT_ERROR; import static com.android.settings.intelligence.ContextualCardProto.ContextualCard.Category.STICKY_VALUE; import static com.google.common.truth.Truth.assertThat; import static org.mockito.ArgumentMatchers.any; import static org.mockito.Mockito.doReturn; import static org.mockito.Mockito.never; import static org.mockito.Mockito.spy; import static org.mockito.Mockito.verify; import android.content.Context; import android.net.Uri; Loading Loading @@ -64,6 +68,32 @@ public class EligibleCardCheckerTest { assertThat(mEligibleCardChecker.isSliceToggleable(slice)).isTrue(); } @Test public void isCardEligibleToDisplay_stickyCard_returnTrue() { final ContextualCard card = new ContextualCard.Builder() .setName("test_card") .setCardType(ContextualCard.CardType.SLICE) .setCategory(STICKY_VALUE) .setSliceUri(CustomSliceRegistry.FLASHLIGHT_SLICE_URI) .build(); assertThat(mEligibleCardChecker.isCardEligibleToDisplay(card)).isTrue(); } @Test public void isCardEligibleToDisplay_stickyCard_shouldNotPrebind() { final ContextualCard card = new ContextualCard.Builder() .setName("test_card") .setCardType(ContextualCard.CardType.SLICE) .setCategory(STICKY_VALUE) .setSliceUri(CustomSliceRegistry.FLASHLIGHT_SLICE_URI) .build(); mEligibleCardChecker.isCardEligibleToDisplay(card); verify(mEligibleCardChecker, never()).bindSlice(CustomSliceRegistry.FLASHLIGHT_SLICE_URI); } @Test public void isCardEligibleToDisplay_toggleSlice_hasInlineActionShouldBeTrue() { final ContextualWifiSlice wifiSlice = new ContextualWifiSlice(mContext); Loading