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

Side by Side Diff: chrome/browser/chromeos/login/owner_manager_unittest.cc

Issue 6538098: [Chrome OS] Owner keys are generated outside Chrome now; handle appropriately (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 9 years, 10 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 | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2010 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 #include "chrome/browser/chromeos/login/owner_manager.h" 5 #include "chrome/browser/chromeos/login/owner_manager.h"
6 #include "chrome/browser/chromeos/login/owner_manager_unittest.h" 6 #include "chrome/browser/chromeos/login/owner_manager_unittest.h"
7 7
8 #include <string> 8 #include <string>
9 9
10 #include "base/crypto/rsa_private_key.h" 10 #include "base/crypto/rsa_private_key.h"
(...skipping 118 matching lines...) Expand 10 before | Expand all | Expand 10 after
129 .RetiresOnSaturation(); 129 .RetiresOnSaturation();
130 130
131 BrowserThread::PostTask( 131 BrowserThread::PostTask(
132 BrowserThread::FILE, FROM_HERE, 132 BrowserThread::FILE, FROM_HERE,
133 NewRunnableMethod(manager.get(), 133 NewRunnableMethod(manager.get(),
134 &OwnerManager::LoadOwnerKey)); 134 &OwnerManager::LoadOwnerKey));
135 135
136 message_loop_.Run(); 136 message_loop_.Run();
137 } 137 }
138 138
139 TEST_F(OwnerManagerTest, KeyGenerationFail) {
140 StartUnowned();
141 MockKeyLoadObserver loader;
142 loader.ExpectKeyFetchSuccess(false);
143 scoped_refptr<OwnerManager> manager(new OwnerManager);
144
145 EXPECT_CALL(*mock_, GenerateKeyPair())
146 .WillOnce(Return(reinterpret_cast<RSAPrivateKey*>(NULL)))
147 .RetiresOnSaturation();
148 EXPECT_CALL(*mock_, GetOwnerKeyFilePath())
149 .WillRepeatedly(Return(tmpfile_));
150
151 BrowserThread::PostTask(
152 BrowserThread::FILE, FROM_HERE,
153 NewRunnableMethod(manager.get(),
154 &OwnerManager::GenerateKeysAndExportPublic));
155
156 message_loop_.Run();
157 }
158
159 TEST_F(OwnerManagerTest, KeyExportFail) {
160 StartUnowned();
161 MockKeyLoadObserver loader;
162 loader.ExpectKeyFetchSuccess(false);
163 scoped_refptr<OwnerManager> manager(new OwnerManager);
164
165 EXPECT_CALL(*mock_, ExportPublicKeyViaDbus(fake_private_key_.get(),
166 manager.get()))
167 .WillOnce(Invoke(MockKeyUtils::ExportPublicKeyViaDbusFail))
168 .RetiresOnSaturation();
169 EXPECT_CALL(*mock_, GenerateKeyPair())
170 .WillOnce(Return(fake_private_key_.release()))
171 .RetiresOnSaturation();
172 EXPECT_CALL(*mock_, GetOwnerKeyFilePath())
173 .WillRepeatedly(Return(tmpfile_));
174
175 BrowserThread::PostTask(
176 BrowserThread::FILE, FROM_HERE,
177 NewRunnableMethod(manager.get(),
178 &OwnerManager::GenerateKeysAndExportPublic));
179
180 message_loop_.Run();
181 }
182
183 TEST_F(OwnerManagerTest, TakeOwnership) {
184 StartUnowned();
185 MockKeyLoadObserver loader;
186 loader.ExpectKeyFetchSuccess(true);
187 scoped_refptr<OwnerManager> manager(new OwnerManager);
188
189 EXPECT_CALL(*mock_, ExportPublicKeyViaDbus(fake_private_key_.get(),
190 manager.get()))
191 .WillOnce(Invoke(MockKeyUtils::ExportPublicKeyViaDbusWin))
192 .RetiresOnSaturation();
193 EXPECT_CALL(*mock_, GenerateKeyPair())
194 .WillOnce(Return(fake_private_key_.release()))
195 .RetiresOnSaturation();
196 EXPECT_CALL(*mock_, GetOwnerKeyFilePath())
197 .WillRepeatedly(Return(tmpfile_));
198
199 BrowserThread::PostTask(
200 BrowserThread::FILE, FROM_HERE,
201 NewRunnableMethod(manager.get(),
202 &OwnerManager::GenerateKeysAndExportPublic));
203
204 message_loop_.Run();
205 }
206
207 TEST_F(OwnerManagerTest, GetKeyFailDuringVerify) { 139 TEST_F(OwnerManagerTest, GetKeyFailDuringVerify) {
208 StartUnowned(); 140 StartUnowned();
209 MockKeyLoadObserver loader; 141 MockKeyLoadObserver loader;
210 loader.ExpectKeyFetchSuccess(false); 142 loader.ExpectKeyFetchSuccess(false);
211 scoped_refptr<OwnerManager> manager(new OwnerManager); 143 scoped_refptr<OwnerManager> manager(new OwnerManager);
212 144
213 EXPECT_CALL(*mock_, GetOwnerKeyFilePath()) 145 EXPECT_CALL(*mock_, GetOwnerKeyFilePath())
214 .WillRepeatedly(Return(tmpfile_)); 146 .WillRepeatedly(Return(tmpfile_));
215 EXPECT_CALL(*mock_, ImportPublicKey(tmpfile_, _)) 147 EXPECT_CALL(*mock_, ImportPublicKey(tmpfile_, _))
216 .WillOnce(Return(false)) 148 .WillOnce(Return(false))
(...skipping 90 matching lines...) Expand 10 before | Expand all | Expand 10 after
307 BrowserThread::FILE, FROM_HERE, 239 BrowserThread::FILE, FROM_HERE,
308 NewRunnableMethod(manager.get(), 240 NewRunnableMethod(manager.get(),
309 &OwnerManager::Sign, 241 &OwnerManager::Sign,
310 BrowserThread::UI, 242 BrowserThread::UI,
311 data, 243 data,
312 &delegate)); 244 &delegate));
313 message_loop_.Run(); 245 message_loop_.Run();
314 } 246 }
315 247
316 } // namespace chromeos 248 } // namespace chromeos
OLDNEW
« no previous file with comments | « chrome/browser/chromeos/login/owner_manager.cc ('k') | chrome/browser/chromeos/login/ownership_service.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698