aboutsummaryrefslogtreecommitdiff
path: root/tests/unit/src/com/android/tv
diff options
context:
space:
mode:
authorshubang <shubang@google.com>2018-03-13 14:04:34 -0700
committerNick Chalko <nchalko@google.com>2018-03-15 14:54:37 -0700
commit84fcc465c5e2a2fe1fbad709f5412ed2e593466c (patch)
tree484fb785017d31114e81f7bd81beab98c8c9bdf7 /tests/unit/src/com/android/tv
parenta6f5f5e3842bb2c9015676adb60c8734b96c7c15 (diff)
downloadTV-84fcc465c5e2a2fe1fbad709f5412ed2e593466c.tar.gz
Refactor DB async tasks for adding series ID column
Context should be passed to async tasks so that shared preferences can be read. PiperOrigin-RevId: 188926697 Change-Id: I7e3233bc5672aafc19ed4c2254eba32a990a0c7d
Diffstat (limited to 'tests/unit/src/com/android/tv')
-rw-r--r--tests/unit/src/com/android/tv/data/ChannelDataManagerTest.java25
1 files changed, 24 insertions, 1 deletions
diff --git a/tests/unit/src/com/android/tv/data/ChannelDataManagerTest.java b/tests/unit/src/com/android/tv/data/ChannelDataManagerTest.java
index 96c1f7a1..7ce96103 100644
--- a/tests/unit/src/com/android/tv/data/ChannelDataManagerTest.java
+++ b/tests/unit/src/com/android/tv/data/ChannelDataManagerTest.java
@@ -25,12 +25,14 @@ import android.content.ContentProvider;
import android.content.ContentUris;
import android.content.ContentValues;
import android.content.Context;
+import android.content.res.AssetFileDescriptor;
import android.database.ContentObserver;
import android.database.Cursor;
import android.media.tv.TvContract;
import android.media.tv.TvContract.Channels;
import android.net.Uri;
import android.os.AsyncTask;
+import android.os.Bundle;
import android.support.test.filters.SmallTest;
import android.support.test.runner.AndroidJUnit4;
import android.test.MoreAsserts;
@@ -44,6 +46,7 @@ import com.android.tv.data.api.Channel;
import com.android.tv.testing.constants.Constants;
import com.android.tv.testing.data.ChannelInfo;
import com.android.tv.util.TvInputManagerHelper;
+import java.io.FileNotFoundException;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
@@ -98,9 +101,20 @@ public class ChannelDataManagerTest {
Mockito.mock(TvInputManagerHelper.class);
Mockito.when(mockHelper.hasTvInputInfo(Matchers.anyString()))
.thenReturn(true);
+ Context mockContext = Mockito.mock(Context.class);
+ Mockito.when(mockContext.getContentResolver())
+ .thenReturn(mContentResolver);
+ Mockito.when(mockContext.checkSelfPermission(Matchers.anyString()))
+ .thenAnswer(
+ invocation -> {
+ Object[] args = invocation.getArguments();
+ return getTargetContext()
+ .checkSelfPermission(((String) args[0]));
+ });
+
mChannelDataManager =
new ChannelDataManager(
- getTargetContext(),
+ mockContext,
mockHelper,
AsyncTask.SERIAL_EXECUTOR,
mContentResolver);
@@ -417,6 +431,15 @@ public class ChannelDataManagerTest {
}
}
+ @Override
+ public AssetFileDescriptor openTypedAssetFile(Uri url, String mimeType, Bundle opts) {
+ try {
+ return getTargetContext().getContentResolver().openAssetFileDescriptor(url, "r");
+ } catch (FileNotFoundException e) {
+ return null;
+ }
+ }
+
/**
* Implementation of {@link ContentProvider#query}. This assumes that {@link
* ChannelDataManager} queries channels with empty {@code selection}. (i.e. channels are