Merge "Fix broken retaildemo tests" into oc-dev

This commit is contained in:
Christine Franks
2017-05-16 20:34:35 +00:00
committed by Android (Google) Code Review
2 changed files with 23 additions and 17 deletions

View File

@@ -24,6 +24,7 @@ import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when; import static org.mockito.Mockito.when;
import android.content.Context; import android.content.Context;
import android.content.ContextWrapper;
import android.content.pm.IPackageInstallObserver2; import android.content.pm.IPackageInstallObserver2;
import android.content.pm.IPackageManager; import android.content.pm.IPackageManager;
import android.content.pm.PackageManager; import android.content.pm.PackageManager;
@@ -32,6 +33,7 @@ import android.os.UserHandle;
import android.provider.Settings; import android.provider.Settings;
import android.support.test.InstrumentationRegistry; import android.support.test.InstrumentationRegistry;
import android.support.test.filters.SmallTest; import android.support.test.filters.SmallTest;
import android.support.test.runner.AndroidJUnit4;
import android.test.mock.MockContentResolver; import android.test.mock.MockContentResolver;
import com.android.internal.util.test.FakeSettingsProvider; import com.android.internal.util.test.FakeSettingsProvider;
@@ -40,20 +42,20 @@ import org.junit.After;
import org.junit.Before; import org.junit.Before;
import org.junit.Test; import org.junit.Test;
import org.junit.runner.RunWith; import org.junit.runner.RunWith;
import org.junit.runners.JUnit4;
import org.mockito.ArgumentCaptor; import org.mockito.ArgumentCaptor;
import org.mockito.Mock; import org.mockito.Mock;
import org.mockito.Mockito;
import org.mockito.MockitoAnnotations; import org.mockito.MockitoAnnotations;
import java.io.File; import java.io.File;
import java.util.ArrayList; import java.util.ArrayList;
@RunWith(JUnit4.class) @RunWith(AndroidJUnit4.class)
@SmallTest @SmallTest
public class PreloadAppsInstallerTest { public class PreloadAppsInstallerTest {
private static final int TEST_DEMO_USER = 111; private static final int TEST_DEMO_USER = 111;
private @Mock Context mContext; private Context mContext;
private @Mock IPackageManager mIpm; private @Mock IPackageManager mIpm;
private MockContentResolver mContentResolver; private MockContentResolver mContentResolver;
private File mPreloadsAppsDirectory; private File mPreloadsAppsDirectory;
@@ -66,6 +68,7 @@ public class PreloadAppsInstallerTest {
@Before @Before
public void setUp() throws Exception { public void setUp() throws Exception {
MockitoAnnotations.initMocks(this); MockitoAnnotations.initMocks(this);
mContext = Mockito.spy(new ContextWrapper(InstrumentationRegistry.getTargetContext()));
mContentResolver = new MockContentResolver(mContext); mContentResolver = new MockContentResolver(mContext);
mContentResolver.addProvider(Settings.AUTHORITY, new FakeSettingsProvider()); mContentResolver.addProvider(Settings.AUTHORITY, new FakeSettingsProvider());
when(mContext.getContentResolver()).thenReturn(mContentResolver); when(mContext.getContentResolver()).thenReturn(mContentResolver);
@@ -89,7 +92,9 @@ public class PreloadAppsInstallerTest {
@After @After
public void tearDown() { public void tearDown() {
FileUtils.deleteContentsAndDir(mPreloadsAppsDirectory); if (mPreloadsAppsDirectory != null) {
FileUtils.deleteContentsAndDir(mPreloadsAppsDirectory);
}
} }
@Test @Test

View File

@@ -38,6 +38,7 @@ import android.app.job.JobScheduler;
import android.content.BroadcastReceiver; import android.content.BroadcastReceiver;
import android.content.ContentResolver; import android.content.ContentResolver;
import android.content.Context; import android.content.Context;
import android.content.ContextWrapper;
import android.content.Intent; import android.content.Intent;
import android.content.IntentFilter; import android.content.IntentFilter;
import android.content.pm.ActivityInfo; import android.content.pm.ActivityInfo;
@@ -59,6 +60,7 @@ import android.provider.MediaStore;
import android.provider.Settings; import android.provider.Settings;
import android.support.test.InstrumentationRegistry; import android.support.test.InstrumentationRegistry;
import android.support.test.filters.SmallTest; import android.support.test.filters.SmallTest;
import android.support.test.runner.AndroidJUnit4;
import android.test.mock.MockContentProvider; import android.test.mock.MockContentProvider;
import android.test.mock.MockContentResolver; import android.test.mock.MockContentResolver;
import android.util.ArrayMap; import android.util.ArrayMap;
@@ -72,9 +74,9 @@ import org.junit.After;
import org.junit.Before; import org.junit.Before;
import org.junit.Test; import org.junit.Test;
import org.junit.runner.RunWith; import org.junit.runner.RunWith;
import org.junit.runners.JUnit4;
import org.mockito.ArgumentCaptor; import org.mockito.ArgumentCaptor;
import org.mockito.Mock; import org.mockito.Mock;
import org.mockito.Mockito;
import org.mockito.MockitoAnnotations; import org.mockito.MockitoAnnotations;
import org.mockito.compat.ArgumentMatcher; import org.mockito.compat.ArgumentMatcher;
@@ -82,7 +84,7 @@ import java.io.File;
import java.util.concurrent.CountDownLatch; import java.util.concurrent.CountDownLatch;
import java.util.concurrent.TimeUnit; import java.util.concurrent.TimeUnit;
@RunWith(JUnit4.class) @RunWith(AndroidJUnit4.class)
@SmallTest @SmallTest
public class RetailDemoModeServiceTest { public class RetailDemoModeServiceTest {
private static final int TEST_DEMO_USER = 111; private static final int TEST_DEMO_USER = 111;
@@ -90,7 +92,7 @@ public class RetailDemoModeServiceTest {
private static final String TEST_CAMERA_PKG = "test.cameraapp"; private static final String TEST_CAMERA_PKG = "test.cameraapp";
private static final String TEST_PRELOADS_DIR_NAME = "test_preloads"; private static final String TEST_PRELOADS_DIR_NAME = "test_preloads";
private @Mock Context mContext; private Context mContext;
private @Mock UserManager mUm; private @Mock UserManager mUm;
private @Mock PackageManager mPm; private @Mock PackageManager mPm;
private @Mock IPackageManager mIpm; private @Mock IPackageManager mIpm;
@@ -113,12 +115,11 @@ public class RetailDemoModeServiceTest {
@Before @Before
public void setUp() throws Exception { public void setUp() throws Exception {
MockitoAnnotations.initMocks(this); MockitoAnnotations.initMocks(this);
Context originalContext = InstrumentationRegistry.getContext(); mContext = Mockito.spy(new ContextWrapper(InstrumentationRegistry.getTargetContext()));
when(mContext.getApplicationInfo()).thenReturn(originalContext.getApplicationInfo());
when(mContext.getResources()).thenReturn(originalContext.getResources());
when(mContext.getSystemServiceName(eq(JobScheduler.class))).thenReturn( when(mContext.getSystemServiceName(eq(JobScheduler.class))).thenReturn(
Context.JOB_SCHEDULER_SERVICE); Context.JOB_SCHEDULER_SERVICE);
when(mContext.getSystemService(Context.JOB_SCHEDULER_SERVICE)).thenReturn(mJobScheduler); when(mContext.getSystemService(Context.JOB_SCHEDULER_SERVICE)).thenReturn(mJobScheduler);
when(mContext.getSystemService(Context.USER_SERVICE)).thenReturn(mUm);
mContentResolver = new MockContentResolver(mContext); mContentResolver = new MockContentResolver(mContext);
mContentResolver.addProvider(Settings.AUTHORITY, new FakeSettingsProvider()); mContentResolver.addProvider(Settings.AUTHORITY, new FakeSettingsProvider());
mContactsProvider = new MockContactsProvider(mContext); mContactsProvider = new MockContactsProvider(mContext);
@@ -129,12 +130,10 @@ public class RetailDemoModeServiceTest {
mTestPreloadsDir = new File(InstrumentationRegistry.getContext().getFilesDir(), mTestPreloadsDir = new File(InstrumentationRegistry.getContext().getFilesDir(),
TEST_PRELOADS_DIR_NAME); TEST_PRELOADS_DIR_NAME);
Settings.Global.putString(mContentResolver, Settings.Global.putString(mContentResolver, Settings.Global.RETAIL_DEMO_MODE_CONSTANTS, "");
Settings.Global.RETAIL_DEMO_MODE_CONSTANTS, ""); Settings.Global.putInt(mContentResolver, Settings.Global.DEVICE_PROVISIONED, 1);
Settings.Global.putInt(mContentResolver, Settings.Global.putInt(mContentResolver, Settings.Global.DEVICE_DEMO_MODE, 1);
Settings.Global.DEVICE_PROVISIONED, 1);
Settings.Global.putInt(mContentResolver,
Settings.Global.DEVICE_DEMO_MODE, 1);
// Initialize RetailDemoModeService // Initialize RetailDemoModeService
mInjector = new TestInjector(); mInjector = new TestInjector();
mService = new RetailDemoModeService(mInjector); mService = new RetailDemoModeService(mInjector);
@@ -143,7 +142,9 @@ public class RetailDemoModeServiceTest {
@After @After
public void tearDown() { public void tearDown() {
FileUtils.deleteContentsAndDir(mTestPreloadsDir); if (mTestPreloadsDir != null) {
FileUtils.deleteContentsAndDir(mTestPreloadsDir);
}
} }
@Test @Test