157 lines
5.7 KiB
Java
157 lines
5.7 KiB
Java
/*
|
|
* Copyright (C) 2008 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.
|
|
*/
|
|
|
|
// Disabled for now, as these tests will probably not make sense with the upcoming UI change.
|
|
// TODO Revive them in some way.
|
|
|
|
//package com.android.email.activity;
|
|
//
|
|
//import com.android.email.Email;
|
|
//import com.android.email.MessagingController;
|
|
//import com.android.email.R;
|
|
//
|
|
//import android.app.Application;
|
|
//import android.content.Context;
|
|
//import android.content.Intent;
|
|
//import android.test.ActivityInstrumentationTestCase2;
|
|
//import android.test.UiThreadTest;
|
|
//import android.test.suitebuilder.annotation.LargeTest;
|
|
//import android.test.suitebuilder.annotation.Suppress;
|
|
//import android.view.View;
|
|
//import android.webkit.WebView;
|
|
//import android.widget.TextView;
|
|
//
|
|
///**
|
|
// * Various instrumentation tests for MessageCompose.
|
|
// *
|
|
// * It might be possible to convert these to ActivityUnitTest, which would be faster.
|
|
// */
|
|
//@LargeTest
|
|
//public class MessageViewTests
|
|
// extends ActivityInstrumentationTestCase2<MessageView> {
|
|
//
|
|
// // copied from MessageView (could be package class)
|
|
// private static final String EXTRA_MESSAGE_ID = "com.android.email.MessageView_message_id";
|
|
// private static final String EXTRA_MAILBOX_ID = "com.android.email.MessageView_mailbox_id";
|
|
//
|
|
// private TextView mToView;
|
|
// private TextView mSubjectView;
|
|
// private WebView mMessageContentView;
|
|
// private Context mContext;
|
|
//
|
|
// public MessageViewTests() {
|
|
// super(MessageView.class);
|
|
// }
|
|
//
|
|
// @Override
|
|
// protected void setUp() throws Exception {
|
|
// super.setUp();
|
|
//
|
|
// mContext = getInstrumentation().getTargetContext();
|
|
// Email.setTempDirectory(mContext);
|
|
// Email.setServicesEnabled(mContext);
|
|
//
|
|
// // setup an intent to spin up this activity with something useful
|
|
// // Long.MIN_VALUE are sentinels to command MessageView to skip loading
|
|
// Intent i = new Intent()
|
|
// .putExtra(EXTRA_MESSAGE_ID, Long.MIN_VALUE)
|
|
// .putExtra(EXTRA_MAILBOX_ID, Long.MIN_VALUE);
|
|
// this.setActivityIntent(i);
|
|
//
|
|
// // configure a mock controller
|
|
// MessagingController mockController =
|
|
// new MockMessagingController(getActivity().getApplication());
|
|
// MessagingController.injectMockController(mockController);
|
|
//
|
|
// final MessageView a = getActivity();
|
|
// mToView = (TextView) a.findViewById(R.id.to);
|
|
// mSubjectView = (TextView) a.findViewById(R.id.subject);
|
|
// mMessageContentView = (WebView) a.findViewById(R.id.message_content);
|
|
// }
|
|
//
|
|
// /**
|
|
// * The name 'test preconditions' is a convention to signal that if this
|
|
// * test doesn't pass, the test case was not set up properly and it might
|
|
// * explain any and all failures in other tests. This is not guaranteed
|
|
// * to run before other tests, as junit uses reflection to find the tests.
|
|
// */
|
|
// public void testPreconditions() {
|
|
// assertNotNull(mToView);
|
|
// assertEquals(0, mToView.length());
|
|
// assertNotNull(mSubjectView);
|
|
// assertEquals(0, mSubjectView.length());
|
|
// assertNotNull(mMessageContentView);
|
|
// }
|
|
//
|
|
// /**
|
|
// * Tests that various UI calls can be made safely even before the messaging controller
|
|
// * has completed loading the message. This catches various race conditions.
|
|
// */
|
|
// @Suppress
|
|
// public void testUiRaceConditions() {
|
|
//
|
|
// MessageView a = getActivity();
|
|
//
|
|
// // on-streen controls
|
|
// a.onClick(a.findViewById(R.id.reply));
|
|
// a.onClick(a.findViewById(R.id.reply_all));
|
|
// a.onClick(a.findViewById(R.id.delete));
|
|
// a.onClick(a.findViewById(R.id.moveToOlder));
|
|
// a.onClick(a.findViewById(R.id.moveToNewer));
|
|
//// a.onClick(a.findViewById(R.id.download)); // not revealed yet, so unfair test
|
|
//// a.onClick(a.findViewById(R.id.view)); // not revealed yet, so unfair test
|
|
// a.onClick(a.findViewById(R.id.show_pictures));
|
|
//
|
|
// // menus
|
|
// a.handleMenuItem(R.id.delete);
|
|
// a.handleMenuItem(R.id.reply);
|
|
// a.handleMenuItem(R.id.reply_all);
|
|
// a.handleMenuItem(R.id.forward);
|
|
// a.handleMenuItem(R.id.mark_as_unread);
|
|
// }
|
|
//
|
|
// /**
|
|
// * Sets EXTRA_DISABLE_REPLY on the intent to true/false, and
|
|
// * checks change in replyButton.isEnabled().
|
|
// */
|
|
// @UiThreadTest
|
|
// public void testDisableReply() {
|
|
// MessageView a = getActivity();
|
|
// View replyButton = a.findViewById(R.id.reply);
|
|
//
|
|
// Intent i = new Intent();
|
|
// a.setIntent(i);
|
|
// a.initFromIntent();
|
|
// assertTrue(replyButton.isEnabled());
|
|
//
|
|
// i.putExtra(MessageView.EXTRA_DISABLE_REPLY, true);
|
|
// a.setIntent(i);
|
|
// a.initFromIntent();
|
|
// assertFalse(replyButton.isEnabled());
|
|
// }
|
|
//
|
|
// /**
|
|
// * Mock Messaging controller, so we can drive its callbacks. This probably should be
|
|
// * generalized since we're likely to use for other tests eventually.
|
|
// */
|
|
// private static class MockMessagingController extends MessagingController {
|
|
//
|
|
// private MockMessagingController(Application application) {
|
|
// super(application);
|
|
// }
|
|
// }
|
|
//}
|