From a8205bb5289eea8889dd84a24f5789026f2e6bf7 Mon Sep 17 00:00:00 2001 From: Fan Zhang Date: Thu, 5 Jan 2017 17:42:21 -0800 Subject: [PATCH] Fix test from security feature provider. Change-Id: Idbe1fdab8f8840c593408ce63fdb003bddbabbf9 Fix: 34113785 Test: RunSettingsRoboTests --- .../security/SecurityFeatureProviderImplTest.java | 40 +++++++++------------- 1 file changed, 16 insertions(+), 24 deletions(-) diff --git a/tests/robotests/src/com/android/settings/security/SecurityFeatureProviderImplTest.java b/tests/robotests/src/com/android/settings/security/SecurityFeatureProviderImplTest.java index 7df9af7fa9..f64054c6e2 100644 --- a/tests/robotests/src/com/android/settings/security/SecurityFeatureProviderImplTest.java +++ b/tests/robotests/src/com/android/settings/security/SecurityFeatureProviderImplTest.java @@ -16,14 +16,12 @@ package com.android.settings.security; +import android.content.Context; import android.content.IContentProvider; import android.content.Intent; -import android.content.Context; import android.content.pm.PackageManager; import android.content.res.Resources; -import android.graphics.Color; import android.graphics.drawable.Drawable; -import android.graphics.drawable.PaintDrawable; import android.os.Bundle; import android.support.v7.preference.Preference; import android.support.v7.preference.PreferenceScreen; @@ -44,17 +42,14 @@ import org.robolectric.annotation.Config; import org.robolectric.annotation.Implementation; import org.robolectric.annotation.Implements; -import java.util.Collections; -import java.util.List; import java.util.Map; -import static com.google.common.truth.Truth.assertThat; import static org.mockito.Matchers.any; import static org.mockito.Matchers.anyInt; import static org.mockito.Matchers.anyString; -import static org.mockito.Mockito.eq; +import static org.mockito.Mockito.mock; +import static org.mockito.Mockito.never; import static org.mockito.Mockito.spy; -import static org.mockito.Mockito.times; import static org.mockito.Mockito.verify; import static org.mockito.Mockito.verifyNoMoreInteractions; import static org.mockito.Mockito.when; @@ -68,8 +63,8 @@ public class SecurityFeatureProviderImplTest { private static final String URI_GET_SUMMARY = "content://package/text/summary"; private static final String URI_GET_ICON = "content://package/icon/my_icon"; - private static final Drawable MOCK_DRAWABLE = new PaintDrawable(Color.BLUE); - + @Mock + private Drawable mMockDrawable; @Mock private Context mContext; @Mock @@ -101,7 +96,7 @@ public class SecurityFeatureProviderImplTest { mImpl = new SecurityFeatureProviderImpl(); when(mContext.getPackageManager()).thenReturn(mPackageManager); when(mPackageManager.getResourcesForApplication(anyString())).thenReturn(mResources); - when(mResources.getDrawable(anyInt(), any())).thenReturn(MOCK_DRAWABLE); + when(mResources.getDrawable(anyInt(), any())).thenReturn(mMockDrawable); } @Test @@ -139,9 +134,9 @@ public class SecurityFeatureProviderImplTest { dashboardCategory.getTile(0).intent = new Intent().setPackage("package"); dashboardCategory.getTile(0).metaData = bundle; - mImpl.updatePreferences(mContext, getPreferenceScreen(), dashboardCategory); - assertThat(screen.findPreference(MOCK_KEY).getIcon()).isEqualTo(MOCK_DRAWABLE); - assertThat(screen.findPreference(MOCK_KEY).getSummary()).isEqualTo(MOCK_SUMMARY); + mImpl.updatePreferences(mContext, screen, dashboardCategory); + verify(screen.findPreference(MOCK_KEY)).setIcon(mMockDrawable); + verify(screen.findPreference(MOCK_KEY)).setSummary(MOCK_SUMMARY); } @Test @@ -154,25 +149,22 @@ public class SecurityFeatureProviderImplTest { bundle.putString(TileUtils.META_DATA_PREFERENCE_SUMMARY_URI, URI_GET_SUMMARY); PreferenceScreen screen = getPreferenceScreen(); - screen.findPreference(MOCK_KEY).setIcon(MOCK_DRAWABLE); - screen.findPreference(MOCK_KEY).setSummary(MOCK_SUMMARY); + when(screen.findPreference(MOCK_KEY).getSummary()).thenReturn(MOCK_SUMMARY); + when(screen.findPreference(MOCK_KEY).getIcon()).thenReturn(mMockDrawable); DashboardCategory dashboardCategory = getDashboardCategory(); dashboardCategory.getTile(0).intent = new Intent().setPackage("package"); dashboardCategory.getTile(0).metaData = bundle; mImpl.updatePreferences(mContext, screen, dashboardCategory); - verify(screen.findPreference(MOCK_KEY), times(0)).setIcon(any()); - verify(screen.findPreference(MOCK_KEY), times(0)).setSummary(anyString()); - assertThat(screen.findPreference(MOCK_KEY).getIcon()).isEqualTo(MOCK_DRAWABLE); - assertThat(screen.findPreference(MOCK_KEY).getSummary()).isEqualTo(MOCK_SUMMARY); + verify(screen.findPreference(MOCK_KEY), never()).setSummary(anyString()); } private PreferenceScreen getPreferenceScreen() { - PreferenceScreen screen = new PreferenceScreen(mContext, null); - Preference preference = spy(new Preference(mContext)); - preference.setKey(MOCK_KEY); - screen.addPreference(preference); + final PreferenceScreen screen = mock(PreferenceScreen.class); + final Preference pref = mock(Preference.class); + when(screen.findPreference(MOCK_KEY)).thenReturn(pref); + when(pref.getKey()).thenReturn(MOCK_KEY); return screen; } -- 2.11.0