| /* |
| * 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); |
| // } |
| // } |
| //} |