summaryrefslogtreecommitdiff
path: root/tests/src/com/android/dialer/CallDetailActivityTest.java
diff options
context:
space:
mode:
Diffstat (limited to 'tests/src/com/android/dialer/CallDetailActivityTest.java')
-rw-r--r--tests/src/com/android/dialer/CallDetailActivityTest.java183
1 files changed, 0 insertions, 183 deletions
diff --git a/tests/src/com/android/dialer/CallDetailActivityTest.java b/tests/src/com/android/dialer/CallDetailActivityTest.java
deleted file mode 100644
index fec25f655..000000000
--- a/tests/src/com/android/dialer/CallDetailActivityTest.java
+++ /dev/null
@@ -1,183 +0,0 @@
-/*
- * Copyright (C) 2011 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package com.android.dialer;
-
-import static com.android.dialer.calllog.CallLogAsyncTaskUtil.Tasks;
-
-import android.content.ContentResolver;
-import android.content.ContentUris;
-import android.content.ContentValues;
-import android.content.Intent;
-import android.net.Uri;
-import android.provider.CallLog;
-import android.provider.VoicemailContract;
-import android.test.ActivityInstrumentationTestCase2;
-import android.test.suitebuilder.annotation.LargeTest;
-import android.test.suitebuilder.annotation.Suppress;
-import android.view.Menu;
-import android.widget.PopupMenu;
-import android.widget.TextView;
-
-import com.android.dialer.calllog.CallLogAsyncTaskUtil;
-import com.android.dialer.util.AppCompatConstants;
-import com.android.dialer.util.AsyncTaskExecutors;
-import com.android.dialer.util.FakeAsyncTaskExecutor;
-
-/**
- * Unit tests for the {@link CallDetailActivity}. NOTE: The screen needs to be on for the
- * UI-related tests to pass.
- */
-@LargeTest
-public class CallDetailActivityTest extends ActivityInstrumentationTestCase2<CallDetailActivity> {
- private static final String CONTACT_NUMBER = "+1412555555";
- private static final String VOICEMAIL_FILE_LOCATION = "/sdcard/sadlfj893w4j23o9sfu.mp3";
-
- private Uri mCallLogUri;
- private Uri mVoicemailUri;
- private FakeAsyncTaskExecutor mFakeAsyncTaskExecutor;
- private CallDetailActivity mActivityUnderTest;
-
- public CallDetailActivityTest() {
- super(CallDetailActivity.class);
- }
-
- @Override
- protected void setUp() throws Exception {
- super.setUp();
-
- mFakeAsyncTaskExecutor = new FakeAsyncTaskExecutor(getInstrumentation());
- AsyncTaskExecutors.setFactoryForTest(mFakeAsyncTaskExecutor.getFactory());
-
- // I don't like the default of focus-mode for tests, the green focus border makes the
- // screenshots look weak.
- setActivityInitialTouchMode(true);
- }
-
- @Override
- protected void tearDown() throws Exception {
- cleanUpUri();
-
- AsyncTaskExecutors.setFactoryForTest(null);
- CallLogAsyncTaskUtil.resetForTest();
-
- super.tearDown();
- }
-
- /** Test for bug where missing Extras on intent used to start Activity causes NPE. */
- public void testCallLogUriWithMissingExtrasShouldNotCauseNPE() throws Throwable {
- setActivityIntentForTestCallEntry();
- startActivityUnderTest();
- }
-
- /**
- * Verifies the trash menu item is present and a voicemail URI is set.
- */
- @Suppress
- public void testVoicemailDeleteButton() throws Throwable {
- setActivityIntentForTestVoicemailEntry();
- startActivityUnderTest();
- mFakeAsyncTaskExecutor.runTask(Tasks.GET_CALL_DETAILS);
-
- Menu optionsMenu = (new PopupMenu(mActivityUnderTest, null)).getMenu();
- mActivityUnderTest.onCreateOptionsMenu(optionsMenu);
- mActivityUnderTest.onPrepareOptionsMenu(optionsMenu);
-
- assertTrue(mActivityUnderTest.hasVoicemail());
- mActivityUnderTest.runOnUiThread(new Runnable() {
- public void run() {
- mActivityUnderTest.findViewById(R.id.call_detail_delete_menu_item).performClick();
- }
- });
- getInstrumentation().waitForIdleSync();
- mFakeAsyncTaskExecutor.runTask(Tasks.DELETE_VOICEMAIL);
- }
-
- /**
- * Verifies the trash menu item is present and a voicemail URI is not set.
- */
- @Suppress
- public void testRegularCallDoesHaveRemoveFromCallLog() throws Throwable {
- setActivityIntentForTestCallEntry();
- startActivityUnderTest();
- mFakeAsyncTaskExecutor.runTask(Tasks.GET_CALL_DETAILS);
-
- Menu optionsMenu = (new PopupMenu(mActivityUnderTest, null)).getMenu();
- mActivityUnderTest.onCreateOptionsMenu(optionsMenu);
- mActivityUnderTest.onPrepareOptionsMenu(optionsMenu);
-
- assertFalse(mActivityUnderTest.hasVoicemail());
- mActivityUnderTest.runOnUiThread(new Runnable() {
- public void run() {
- mActivityUnderTest.findViewById(R.id.call_detail_delete_menu_item).performClick();
- }
- });
- getInstrumentation().waitForIdleSync();
- mFakeAsyncTaskExecutor.runTask(Tasks.DELETE_CALL);
- }
-
- private void setActivityIntentForTestCallEntry() {
- assertNull(mVoicemailUri);
- assertNull(mCallLogUri);
- ContentResolver contentResolver = getContentResolver();
- ContentValues values = new ContentValues();
- values.put(CallLog.Calls.NUMBER, CONTACT_NUMBER);
- values.put(CallLog.Calls.NUMBER_PRESENTATION, CallLog.Calls.PRESENTATION_ALLOWED);
- values.put(CallLog.Calls.TYPE, AppCompatConstants.CALLS_INCOMING_TYPE);
- mCallLogUri = contentResolver.insert(CallLog.Calls.CONTENT_URI, values);
- setActivityIntent(new Intent(Intent.ACTION_VIEW, mCallLogUri));
- }
-
- private void setActivityIntentForTestVoicemailEntry() {
- assertNull(mVoicemailUri);
- ContentResolver contentResolver = getContentResolver();
- ContentValues values = new ContentValues();
- values.put(VoicemailContract.Voicemails.NUMBER, CONTACT_NUMBER);
- values.put(VoicemailContract.Voicemails.HAS_CONTENT, 1);
- // VoicemailContract.Voicemails._DATA
- values.put("_data", VOICEMAIL_FILE_LOCATION);
- mVoicemailUri = contentResolver.insert(VoicemailContract.Voicemails.CONTENT_URI, values);
-
- Uri callLogUri = ContentUris.withAppendedId(CallLog.Calls.CONTENT_URI_WITH_VOICEMAIL,
- ContentUris.parseId(mVoicemailUri));
- Intent intent = new Intent(Intent.ACTION_VIEW, callLogUri);
- intent.putExtra(CallDetailActivity.EXTRA_VOICEMAIL_URI, mVoicemailUri);
- setActivityIntent(intent);
- }
-
- private void cleanUpUri() {
- if (mVoicemailUri != null) {
- getContentResolver().delete(VoicemailContract.Voicemails.CONTENT_URI,
- "_ID = ?", new String[] { String.valueOf(ContentUris.parseId(mVoicemailUri)) });
- mVoicemailUri = null;
- }
- if (mCallLogUri != null) {
- getContentResolver().delete(CallLog.Calls.CONTENT_URI_WITH_VOICEMAIL,
- "_ID = ?", new String[] { String.valueOf(ContentUris.parseId(mCallLogUri)) });
- mCallLogUri = null;
- }
- }
-
- private ContentResolver getContentResolver() {
- return getInstrumentation().getTargetContext().getContentResolver();
- }
-
- private void startActivityUnderTest() throws Throwable {
- assertNull(mActivityUnderTest);
- mActivityUnderTest = getActivity();
- assertNotNull("activity should not be null", mActivityUnderTest);
- }
-}