Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(557)

Side by Side Diff: chrome/android/javatests/src/org/chromium/chrome/browser/signin/SigninHelperTest.java

Issue 2766373004: Convert the rest of chrome_public_test_apk InstrumentationTestCases to JUnit4 (Closed)
Patch Set: nits and rebase Created 3 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2015 The Chromium Authors. All rights reserved. 1 // Copyright 2015 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.chrome.browser.signin; 5 package org.chromium.chrome.browser.signin;
6 6
7 import android.accounts.Account; 7 import android.accounts.Account;
8 import android.support.test.InstrumentationRegistry;
8 import android.support.test.filters.SmallTest; 9 import android.support.test.filters.SmallTest;
9 import android.test.InstrumentationTestCase; 10
11 import org.junit.Assert;
12 import org.junit.Before;
13 import org.junit.Test;
14 import org.junit.runner.RunWith;
10 15
11 import org.chromium.base.test.util.AdvancedMockContext; 16 import org.chromium.base.test.util.AdvancedMockContext;
12 import org.chromium.base.test.util.DisabledTest; 17 import org.chromium.base.test.util.DisabledTest;
13 import org.chromium.base.test.util.RetryOnFailure; 18 import org.chromium.base.test.util.RetryOnFailure;
19 import org.chromium.chrome.test.ChromeJUnit4ClassRunner;
14 import org.chromium.chrome.test.util.browser.signin.MockChangeEventChecker; 20 import org.chromium.chrome.test.util.browser.signin.MockChangeEventChecker;
15 import org.chromium.components.signin.AccountManagerHelper; 21 import org.chromium.components.signin.AccountManagerHelper;
16 import org.chromium.components.signin.ChromeSigninController; 22 import org.chromium.components.signin.ChromeSigninController;
17 import org.chromium.components.signin.test.util.AccountHolder; 23 import org.chromium.components.signin.test.util.AccountHolder;
18 import org.chromium.components.signin.test.util.MockAccountManager; 24 import org.chromium.components.signin.test.util.MockAccountManager;
19 25
20 /** 26 /**
21 * Instrumentation tests for {@link SigninHelper}. 27 * Instrumentation tests for {@link SigninHelper}.
22 */ 28 */
23 public class SigninHelperTest extends InstrumentationTestCase { 29 @RunWith(ChromeJUnit4ClassRunner.class)
30 public class SigninHelperTest {
24 private MockAccountManager mAccountManager; 31 private MockAccountManager mAccountManager;
25 private AdvancedMockContext mContext; 32 private AdvancedMockContext mContext;
26 private MockChangeEventChecker mEventChecker; 33 private MockChangeEventChecker mEventChecker;
27 34
28 @Override 35 @Before
29 public void setUp() { 36 public void setUp() {
30 mContext = new AdvancedMockContext(getInstrumentation().getTargetContext ()); 37 mContext = new AdvancedMockContext(
38 InstrumentationRegistry.getInstrumentation().getTargetContext()) ;
31 mEventChecker = new MockChangeEventChecker(); 39 mEventChecker = new MockChangeEventChecker();
32 40
33 // Mock out the account manager on the device. 41 // Mock out the account manager on the device.
34 mAccountManager = new MockAccountManager(mContext, getInstrumentation(). getContext()); 42 mAccountManager = new MockAccountManager(
43 mContext, InstrumentationRegistry.getInstrumentation().getContex t());
35 AccountManagerHelper.overrideAccountManagerHelperForTests(mContext, mAcc ountManager); 44 AccountManagerHelper.overrideAccountManagerHelperForTests(mContext, mAcc ountManager);
36 } 45 }
37 46
47 @Test
38 @SmallTest 48 @SmallTest
39 @RetryOnFailure 49 @RetryOnFailure
40 public void testAccountsChangedPref() { 50 public void testAccountsChangedPref() {
41 assertEquals("Should never return true before the pref has ever been set .", 51 Assert.assertEquals("Should never return true before the pref has ever b een set.", false,
42 false, SigninHelper.checkAndClearAccountsChangedPref(mContext)); 52 SigninHelper.checkAndClearAccountsChangedPref(mContext));
43 assertEquals("Should never return true before the pref has ever been set .", 53 Assert.assertEquals("Should never return true before the pref has ever b een set.", false,
44 false, SigninHelper.checkAndClearAccountsChangedPref(mContext)); 54 SigninHelper.checkAndClearAccountsChangedPref(mContext));
45 55
46 // Mark the pref as set. 56 // Mark the pref as set.
47 SigninHelper.markAccountsChangedPref(mContext); 57 SigninHelper.markAccountsChangedPref(mContext);
48 58
49 assertEquals("Should return true first time after marking accounts chang ed", 59 Assert.assertEquals("Should return true first time after marking account s changed", true,
50 true, SigninHelper.checkAndClearAccountsChangedPref(mContext)); 60 SigninHelper.checkAndClearAccountsChangedPref(mContext));
51 assertEquals("Should only return true first time after marking accounts changed", 61 Assert.assertEquals("Should only return true first time after marking ac counts changed",
52 false, SigninHelper.checkAndClearAccountsChangedPref(mContext)); 62 false, SigninHelper.checkAndClearAccountsChangedPref(mContext));
53 assertEquals("Should only return true first time after marking accounts changed", 63 Assert.assertEquals("Should only return true first time after marking ac counts changed",
54 false, SigninHelper.checkAndClearAccountsChangedPref(mContext)); 64 false, SigninHelper.checkAndClearAccountsChangedPref(mContext));
55 65
56 // Mark the pref as set again. 66 // Mark the pref as set again.
57 SigninHelper.markAccountsChangedPref(mContext); 67 SigninHelper.markAccountsChangedPref(mContext);
58 68
59 assertEquals("Should return true first time after marking accounts chang ed", 69 Assert.assertEquals("Should return true first time after marking account s changed", true,
60 true, SigninHelper.checkAndClearAccountsChangedPref(mContext)); 70 SigninHelper.checkAndClearAccountsChangedPref(mContext));
61 assertEquals("Should only return true first time after marking accounts changed", 71 Assert.assertEquals("Should only return true first time after marking ac counts changed",
62 false, SigninHelper.checkAndClearAccountsChangedPref(mContext)); 72 false, SigninHelper.checkAndClearAccountsChangedPref(mContext));
63 assertEquals("Should only return true first time after marking accounts changed", 73 Assert.assertEquals("Should only return true first time after marking ac counts changed",
64 false, SigninHelper.checkAndClearAccountsChangedPref(mContext)); 74 false, SigninHelper.checkAndClearAccountsChangedPref(mContext));
65 } 75 }
66 76
77 @Test
67 @SmallTest 78 @SmallTest
68 @RetryOnFailure 79 @RetryOnFailure
69 public void testSimpleAccountRename() { 80 public void testSimpleAccountRename() {
70 setSignedInAccountName("A"); 81 setSignedInAccountName("A");
71 mEventChecker.insertRenameEvent("A", "B"); 82 mEventChecker.insertRenameEvent("A", "B");
72 SigninHelper.updateAccountRenameData(mContext, mEventChecker); 83 SigninHelper.updateAccountRenameData(mContext, mEventChecker);
73 assertEquals("B", getNewSignedInAccountName()); 84 Assert.assertEquals("B", getNewSignedInAccountName());
74 } 85 }
75 86
87 @Test
76 @DisabledTest(message = "crbug.com/568623") 88 @DisabledTest(message = "crbug.com/568623")
77 @SmallTest 89 @SmallTest
78 public void testNotSignedInAccountRename() { 90 public void testNotSignedInAccountRename() {
79 setSignedInAccountName("A"); 91 setSignedInAccountName("A");
80 mEventChecker.insertRenameEvent("B", "C"); 92 mEventChecker.insertRenameEvent("B", "C");
81 SigninHelper.updateAccountRenameData(mContext, mEventChecker); 93 SigninHelper.updateAccountRenameData(mContext, mEventChecker);
82 assertEquals(null, getNewSignedInAccountName()); 94 Assert.assertEquals(null, getNewSignedInAccountName());
83 } 95 }
84 96
97 @Test
85 @SmallTest 98 @SmallTest
86 public void testSimpleAccountRenameTwice() { 99 public void testSimpleAccountRenameTwice() {
87 setSignedInAccountName("A"); 100 setSignedInAccountName("A");
88 mEventChecker.insertRenameEvent("A", "B"); 101 mEventChecker.insertRenameEvent("A", "B");
89 SigninHelper.updateAccountRenameData(mContext, mEventChecker); 102 SigninHelper.updateAccountRenameData(mContext, mEventChecker);
90 assertEquals("B", getNewSignedInAccountName()); 103 Assert.assertEquals("B", getNewSignedInAccountName());
91 mEventChecker.insertRenameEvent("B", "C"); 104 mEventChecker.insertRenameEvent("B", "C");
92 SigninHelper.updateAccountRenameData(mContext, mEventChecker); 105 SigninHelper.updateAccountRenameData(mContext, mEventChecker);
93 assertEquals("C", getNewSignedInAccountName()); 106 Assert.assertEquals("C", getNewSignedInAccountName());
94 } 107 }
95 108
109 @Test
96 @SmallTest 110 @SmallTest
97 @RetryOnFailure 111 @RetryOnFailure
98 public void testNotSignedInAccountRename2() { 112 public void testNotSignedInAccountRename2() {
99 setSignedInAccountName("A"); 113 setSignedInAccountName("A");
100 mEventChecker.insertRenameEvent("B", "C"); 114 mEventChecker.insertRenameEvent("B", "C");
101 mEventChecker.insertRenameEvent("C", "D"); 115 mEventChecker.insertRenameEvent("C", "D");
102 SigninHelper.updateAccountRenameData(mContext, mEventChecker); 116 SigninHelper.updateAccountRenameData(mContext, mEventChecker);
103 assertEquals(null, getNewSignedInAccountName()); 117 Assert.assertEquals(null, getNewSignedInAccountName());
104 } 118 }
105 119
120 @Test
106 @SmallTest 121 @SmallTest
107 @RetryOnFailure 122 @RetryOnFailure
108 public void testChainedAccountRename2() { 123 public void testChainedAccountRename2() {
109 setSignedInAccountName("A"); 124 setSignedInAccountName("A");
110 mEventChecker.insertRenameEvent("Z", "Y"); // Unrelated. 125 mEventChecker.insertRenameEvent("Z", "Y"); // Unrelated.
111 mEventChecker.insertRenameEvent("A", "B"); 126 mEventChecker.insertRenameEvent("A", "B");
112 mEventChecker.insertRenameEvent("Y", "X"); // Unrelated. 127 mEventChecker.insertRenameEvent("Y", "X"); // Unrelated.
113 mEventChecker.insertRenameEvent("B", "C"); 128 mEventChecker.insertRenameEvent("B", "C");
114 mEventChecker.insertRenameEvent("C", "D"); 129 mEventChecker.insertRenameEvent("C", "D");
115 SigninHelper.updateAccountRenameData(mContext, mEventChecker); 130 SigninHelper.updateAccountRenameData(mContext, mEventChecker);
116 assertEquals("D", getNewSignedInAccountName()); 131 Assert.assertEquals("D", getNewSignedInAccountName());
117 } 132 }
118 133
134 @Test
119 @SmallTest 135 @SmallTest
120 @RetryOnFailure 136 @RetryOnFailure
121 public void testLoopedAccountRename() { 137 public void testLoopedAccountRename() {
122 setSignedInAccountName("A"); 138 setSignedInAccountName("A");
123 mEventChecker.insertRenameEvent("Z", "Y"); // Unrelated. 139 mEventChecker.insertRenameEvent("Z", "Y"); // Unrelated.
124 mEventChecker.insertRenameEvent("A", "B"); 140 mEventChecker.insertRenameEvent("A", "B");
125 mEventChecker.insertRenameEvent("Y", "X"); // Unrelated. 141 mEventChecker.insertRenameEvent("Y", "X"); // Unrelated.
126 mEventChecker.insertRenameEvent("B", "C"); 142 mEventChecker.insertRenameEvent("B", "C");
127 mEventChecker.insertRenameEvent("C", "D"); 143 mEventChecker.insertRenameEvent("C", "D");
128 mEventChecker.insertRenameEvent("D", "A"); // Looped. 144 mEventChecker.insertRenameEvent("D", "A"); // Looped.
129 Account account = AccountManagerHelper.createAccountFromName("D"); 145 Account account = AccountManagerHelper.createAccountFromName("D");
130 AccountHolder accountHolder = AccountHolder.builder(account).build(); 146 AccountHolder accountHolder = AccountHolder.builder(account).build();
131 mAccountManager.addAccountHolderExplicitly(accountHolder); 147 mAccountManager.addAccountHolderExplicitly(accountHolder);
132 SigninHelper.updateAccountRenameData(mContext, mEventChecker); 148 SigninHelper.updateAccountRenameData(mContext, mEventChecker);
133 assertEquals("D", getNewSignedInAccountName()); 149 Assert.assertEquals("D", getNewSignedInAccountName());
134 } 150 }
135 151
136 private void setSignedInAccountName(String account) { 152 private void setSignedInAccountName(String account) {
137 ChromeSigninController.get(mContext).setSignedInAccountName(account); 153 ChromeSigninController.get(mContext).setSignedInAccountName(account);
138 } 154 }
139 155
140 private String getSignedInAccountName() { 156 private String getSignedInAccountName() {
141 return ChromeSigninController.get(mContext).getSignedInAccountName(); 157 return ChromeSigninController.get(mContext).getSignedInAccountName();
142 } 158 }
143 159
144 private String getNewSignedInAccountName() { 160 private String getNewSignedInAccountName() {
145 return SigninHelper.getNewSignedInAccountName(mContext); 161 return SigninHelper.getNewSignedInAccountName(mContext);
146 } 162 }
147 } 163 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698