| OLD | NEW |
| 1 // Copyright 2012 The Chromium Authors. All rights reserved. | 1 // Copyright 2012 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 package org.chromium.content.browser; | 5 package org.chromium.content.browser; |
| 6 | 6 |
| 7 import android.support.test.filters.MediumTest; | 7 import android.support.test.filters.MediumTest; |
| 8 | 8 |
| 9 import org.junit.Assert; |
| 10 import org.junit.Rule; |
| 11 import org.junit.Test; |
| 12 import org.junit.runner.RunWith; |
| 13 |
| 14 import org.chromium.base.test.BaseJUnit4ClassRunner; |
| 9 import org.chromium.base.test.util.CommandLineFlags; | 15 import org.chromium.base.test.util.CommandLineFlags; |
| 16 import org.chromium.base.test.util.CommandLineTestRule; |
| 10 import org.chromium.base.test.util.Feature; | 17 import org.chromium.base.test.util.Feature; |
| 11 import org.chromium.base.test.util.RetryOnFailure; | 18 import org.chromium.base.test.util.RetryOnFailure; |
| 12 import org.chromium.content.common.ContentSwitches; | 19 import org.chromium.content.common.ContentSwitches; |
| 13 | 20 |
| 14 /** | 21 /** |
| 15 * Test suite for email address detection. | 22 * Test suite for email address detection. |
| 16 */ | 23 */ |
| 24 @RunWith(BaseJUnit4ClassRunner.class) |
| 17 @CommandLineFlags.Add({ContentSwitches.ENABLE_CONTENT_INTENT_DETECTION}) | 25 @CommandLineFlags.Add({ContentSwitches.ENABLE_CONTENT_INTENT_DETECTION}) |
| 18 public class EmailAddressDetectionTest extends ContentDetectionTestBase { | 26 public class EmailAddressDetectionTest { |
| 27 @Rule |
| 28 public ContentDetectionActivityTestRule mActivityTestRule = |
| 29 new ContentDetectionActivityTestRule(); |
| 30 |
| 31 @Rule |
| 32 public CommandLineTestRule mCommandLineTestRule = |
| 33 new CommandLineTestRule(true).setFlags(ContentSwitches.ENABLE_CONTEN
T_INTENT_DETECTION); |
| 19 | 34 |
| 20 private static final String EMAIL_INTENT_PREFIX = "mailto:"; | 35 private static final String EMAIL_INTENT_PREFIX = "mailto:"; |
| 21 | 36 |
| 22 private boolean isExpectedEmailIntent(String intentUrl, String expectedConte
nt) { | 37 private boolean isExpectedEmailIntent(String intentUrl, String expectedConte
nt) { |
| 23 if (intentUrl == null) return false; | 38 if (intentUrl == null) return false; |
| 24 final String expectedUrl = EMAIL_INTENT_PREFIX + urlForContent(expectedC
ontent); | 39 final String expectedUrl = |
| 40 EMAIL_INTENT_PREFIX + mActivityTestRule.urlForContent(expectedCo
ntent); |
| 25 return intentUrl.equals(expectedUrl); | 41 return intentUrl.equals(expectedUrl); |
| 26 } | 42 } |
| 27 | 43 |
| 44 @Test |
| 28 @MediumTest | 45 @MediumTest |
| 29 @Feature({"ContentDetection", "TabContents"}) | 46 @Feature({"ContentDetection", "TabContents"}) |
| 30 @RetryOnFailure | 47 @RetryOnFailure |
| 31 public void testValidEmailAddresses() throws Throwable { | 48 public void testValidEmailAddresses() throws Throwable { |
| 32 startActivityWithTestUrl("content/test/data/android/content_detection/em
ail.html"); | 49 mActivityTestRule.launchContentShellWithUrlSync( |
| 50 "content/test/data/android/content_detection/email.html"); |
| 33 | 51 |
| 34 // valid_1: i.want.a.pony@chromium.org. | 52 // valid_1: i.want.a.pony@chromium.org. |
| 35 String intentUrl = scrollAndTapExpectingIntent("valid_1"); | 53 String intentUrl = mActivityTestRule.scrollAndTapExpectingIntent("valid_
1"); |
| 36 assertTrue(isExpectedEmailIntent(intentUrl, "i.want.a.pony@chromium.org"
)); | 54 Assert.assertTrue(isExpectedEmailIntent(intentUrl, "i.want.a.pony@chromi
um.org")); |
| 37 | 55 |
| 38 // valid_2: nyan_cat@chromium.org. | 56 // valid_2: nyan_cat@chromium.org. |
| 39 intentUrl = scrollAndTapExpectingIntent("valid_2"); | 57 intentUrl = mActivityTestRule.scrollAndTapExpectingIntent("valid_2"); |
| 40 assertTrue(isExpectedEmailIntent(intentUrl, "nyan_cat@chromium.org")); | 58 Assert.assertTrue(isExpectedEmailIntent(intentUrl, "nyan_cat@chromium.or
g")); |
| 41 | 59 |
| 42 // valid_3: 123@456.com. | 60 // valid_3: 123@456.com. |
| 43 intentUrl = scrollAndTapExpectingIntent("valid_3"); | 61 intentUrl = mActivityTestRule.scrollAndTapExpectingIntent("valid_3"); |
| 44 assertTrue(isExpectedEmailIntent(intentUrl, "123@456.com")); | 62 Assert.assertTrue(isExpectedEmailIntent(intentUrl, "123@456.com")); |
| 45 } | 63 } |
| 46 } | 64 } |
| OLD | NEW |