aboutsummaryrefslogtreecommitdiff
path: root/tests/unit/src/com/android/tv/data/ChannelTest.java
diff options
context:
space:
mode:
Diffstat (limited to 'tests/unit/src/com/android/tv/data/ChannelTest.java')
-rw-r--r--tests/unit/src/com/android/tv/data/ChannelTest.java38
1 files changed, 32 insertions, 6 deletions
diff --git a/tests/unit/src/com/android/tv/data/ChannelTest.java b/tests/unit/src/com/android/tv/data/ChannelTest.java
index 95e3ee90..d270e277 100644
--- a/tests/unit/src/com/android/tv/data/ChannelTest.java
+++ b/tests/unit/src/com/android/tv/data/ChannelTest.java
@@ -16,17 +16,21 @@
package com.android.tv.data;
+import static org.junit.Assert.assertEquals;
+
import android.content.ComponentName;
import android.content.Context;
import android.content.Intent;
import android.content.pm.ActivityInfo;
import android.content.pm.PackageManager;
+import android.content.pm.PackageManager.NameNotFoundException;
import android.support.test.filters.SmallTest;
-import android.test.AndroidTestCase;
import com.android.tv.testing.ComparatorTester;
import com.android.tv.util.TvInputManagerHelper;
+import org.junit.Before;
+import org.junit.Test;
import org.mockito.Matchers;
import org.mockito.Mockito;
import org.mockito.invocation.InvocationOnMock;
@@ -38,7 +42,7 @@ import java.util.Comparator;
* Tests for {@link Channel}.
*/
@SmallTest
-public class ChannelTest extends AndroidTestCase {
+public class ChannelTest {
// Used for testing TV inputs with invalid input package. This could happen when a TV input is
// uninstalled while drawing an app link card.
private static final String INVALID_TV_INPUT_PACKAGE_NAME =
@@ -59,9 +63,8 @@ public class ChannelTest extends AndroidTestCase {
private Intent mInvalidIntent;
private Intent mValidIntent;
- @Override
- public void setUp() throws Exception {
- super.setUp();
+ @Before
+ public void setUp() throws NameNotFoundException {
mInvalidIntent = new Intent(Intent.ACTION_VIEW);
mInvalidIntent.setComponent(new ComponentName(INVALID_TV_INPUT_PACKAGE_NAME, ".test"));
mValidIntent = new Intent(Intent.ACTION_VIEW);
@@ -103,6 +106,7 @@ public class ChannelTest extends AndroidTestCase {
Mockito.when(mMockContext.getPackageManager()).thenReturn(mockPackageManager);
}
+ @Test
public void testGetAppLinkType_NoText_NoIntent() {
assertAppLinkType(Channel.APP_LINK_TYPE_NONE, INVALID_TV_INPUT_PACKAGE_NAME, null, null);
assertAppLinkType(Channel.APP_LINK_TYPE_NONE, LIVE_CHANNELS_PACKAGE_NAME, null, null);
@@ -226,7 +230,6 @@ public class ChannelTest extends AndroidTestCase {
* See <a href="http://b/23031603">b/23031603</a>.
*/
public void testComparatorLabel() {
-
TvInputManagerHelper manager = Mockito.mock(TvInputManagerHelper.class);
Mockito.when(manager.isPartnerInput(Matchers.anyString())).thenAnswer(
new Answer<Boolean>() {
@@ -254,6 +257,29 @@ public class ChannelTest extends AndroidTestCase {
comparatorTester.test();
}
+ public void testNormalizeChannelNumber() {
+ assertNormalizedDisplayNumber(null, null);
+ assertNormalizedDisplayNumber("", "");
+ assertNormalizedDisplayNumber("1", "1");
+ assertNormalizedDisplayNumber("abcde", "abcde");
+ assertNormalizedDisplayNumber("1-1", "1-1");
+ assertNormalizedDisplayNumber("1.1", "1-1");
+ assertNormalizedDisplayNumber("1 1", "1-1");
+ assertNormalizedDisplayNumber("1\u058a1", "1-1");
+ assertNormalizedDisplayNumber("1\u05be1", "1-1");
+ assertNormalizedDisplayNumber("1\u14001", "1-1");
+ assertNormalizedDisplayNumber("1\u18061", "1-1");
+ assertNormalizedDisplayNumber("1\u20101", "1-1");
+ assertNormalizedDisplayNumber("1\u20111", "1-1");
+ assertNormalizedDisplayNumber("1\u20121", "1-1");
+ assertNormalizedDisplayNumber("1\u20131", "1-1");
+ assertNormalizedDisplayNumber("1\u20141", "1-1");
+ }
+
+ private void assertNormalizedDisplayNumber(String displayNumber, String normalized) {
+ assertEquals(normalized, Channel.normalizeDisplayNumber(displayNumber));
+ }
+
private class TestChannelComparator extends Channel.DefaultComparator {
public TestChannelComparator(TvInputManagerHelper manager) {
super(null, manager);