Fix a monkey crash when it dismisses suggestion.
Change-Id: I300a49ed75381795b6532388f770847ed39a4c8c
Fix: 36509330
Test: make RunSettingsRoboTests
diff --git a/src/com/android/settings/dashboard/suggestions/SuggestionFeatureProviderImpl.java b/src/com/android/settings/dashboard/suggestions/SuggestionFeatureProviderImpl.java
index b82c28d..779a8aa 100644
--- a/src/com/android/settings/dashboard/suggestions/SuggestionFeatureProviderImpl.java
+++ b/src/com/android/settings/dashboard/suggestions/SuggestionFeatureProviderImpl.java
@@ -63,7 +63,7 @@
@Override
public void dismissSuggestion(Context context, SuggestionParser parser, Tile suggestion) {
- if (parser == null || suggestion == null) {
+ if (parser == null || suggestion == null || context == null) {
return;
}
mMetricsFeatureProvider.action(
diff --git a/tests/robotests/src/com/android/settings/dashboard/suggestions/SuggestionFeatureProviderImplTest.java b/tests/robotests/src/com/android/settings/dashboard/suggestions/SuggestionFeatureProviderImplTest.java
index b36aef2..3efe15a 100644
--- a/tests/robotests/src/com/android/settings/dashboard/suggestions/SuggestionFeatureProviderImplTest.java
+++ b/tests/robotests/src/com/android/settings/dashboard/suggestions/SuggestionFeatureProviderImplTest.java
@@ -120,6 +120,14 @@
verify(mContext, never()).getPackageManager();
}
+
+ @Test
+ public void dismissSuggestion_noContext_shouldDoNothing() {
+ mProvider.dismissSuggestion(null, mSuggestionParser, mSuggestion);
+
+ verifyZeroInteractions(mFactory.metricsFeatureProvider);
+ }
+
@Test
public void dismissSuggestion_hasNoMoreDismissCount_shouldDisableComponent() {
when(mSuggestionParser.dismissSuggestion(any(Tile.class), anyBoolean()))