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

Side by Side Diff: chrome/browser/chromeos/tether/tether_service_unittest.cc

Issue 2961733002: [CrOS Tether] Remove spammy log from Initializer. (Closed)
Patch Set: hansberry@ comments. Created 3 years, 5 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 2017 The Chromium Authors. All rights reserved. 1 // Copyright 2017 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/tether/tether_service.h" 5 #include "chrome/browser/chromeos/tether/tether_service.h"
6 6
7 #include <memory> 7 #include <memory>
8 8
9 #include "base/command_line.h" 9 #include "base/command_line.h"
10 #include "base/memory/ptr_util.h" 10 #include "base/memory/ptr_util.h"
(...skipping 72 matching lines...) Expand 10 before | Expand all | Expand 10 after
83 protected: 83 protected:
84 void UpdateTetherTechnologyState() override { 84 void UpdateTetherTechnologyState() override {
85 updated_technology_state_count_++; 85 updated_technology_state_count_++;
86 TetherService::UpdateTetherTechnologyState(); 86 TetherService::UpdateTetherTechnologyState();
87 } 87 }
88 88
89 private: 89 private:
90 int updated_technology_state_count_ = 0; 90 int updated_technology_state_count_ = 0;
91 }; 91 };
92 92
93 class TestInitializerDelegate : public TetherService::InitializerDelegate {
94 public:
95 bool is_tether_running() { return is_tether_running_; }
96
97 // TetherService::InitializerDelegate:
98 void InitializeTether(
99 cryptauth::CryptAuthService* cryptauth_service,
100 std::unique_ptr<chromeos::tether::NotificationPresenter>
101 notification_presenter,
102 PrefService* pref_service,
103 ProfileOAuth2TokenService* token_service,
104 chromeos::NetworkStateHandler* network_state_handler,
105 chromeos::ManagedNetworkConfigurationHandler*
106 managed_network_configuration_handler,
107 chromeos::NetworkConnect* network_connect,
108 chromeos::NetworkConnectionHandler* network_connection_handler) override {
109 is_tether_running_ = true;
110 }
111
112 void ShutdownTether() override { is_tether_running_ = false; }
113
114 private:
115 bool is_tether_running_ = false;
116 };
117
93 } // namespace 118 } // namespace
94 119
95 class TetherServiceTest : public chromeos::NetworkStateTest { 120 class TetherServiceTest : public chromeos::NetworkStateTest {
96 protected: 121 protected:
97 TetherServiceTest() : NetworkStateTest() {} 122 TetherServiceTest() : NetworkStateTest() {}
98 ~TetherServiceTest() override {} 123 ~TetherServiceTest() override {}
99 124
100 void SetUp() override { 125 void SetUp() override {
101 chromeos::DBusThreadManager::Initialize(); 126 chromeos::DBusThreadManager::Initialize();
102 chromeos::NetworkStateTest::SetUp(); 127 chromeos::NetworkStateTest::SetUp();
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after
138 message_center::MessageCenter::Shutdown(); 163 message_center::MessageCenter::Shutdown();
139 chromeos::NetworkConnect::Shutdown(); 164 chromeos::NetworkConnect::Shutdown();
140 chromeos::NetworkHandler::Shutdown(); 165 chromeos::NetworkHandler::Shutdown();
141 166
142 ShutdownNetworkState(); 167 ShutdownNetworkState();
143 chromeos::NetworkStateTest::TearDown(); 168 chromeos::NetworkStateTest::TearDown();
144 chromeos::DBusThreadManager::Shutdown(); 169 chromeos::DBusThreadManager::Shutdown();
145 } 170 }
146 171
147 void CreateTetherService() { 172 void CreateTetherService() {
173 test_initializer_delegate_ = new TestInitializerDelegate();
174
148 tether_service_ = base::WrapUnique(new TestTetherService( 175 tether_service_ = base::WrapUnique(new TestTetherService(
149 profile_.get(), fake_power_manager_client_.get(), 176 profile_.get(), fake_power_manager_client_.get(),
150 fake_session_manager_client_.get(), fake_cryptauth_service_.get(), 177 fake_session_manager_client_.get(), fake_cryptauth_service_.get(),
151 network_state_handler())); 178 network_state_handler()));
179 tether_service_->SetInitializerDelegateForTest(
180 base::WrapUnique(test_initializer_delegate_));
152 base::RunLoop().RunUntilIdle(); 181 base::RunLoop().RunUntilIdle();
153 } 182 }
154 183
155 void ShutdownTetherService() { 184 void ShutdownTetherService() {
156 if (tether_service_) 185 if (tether_service_)
157 tether_service_->Shutdown(); 186 tether_service_->Shutdown();
158 } 187 }
159 188
160 void SetIsScreenLocked(bool is_screen_locked) { 189 void SetIsScreenLocked(bool is_screen_locked) {
161 fake_session_manager_client_->set_is_screen_locked(is_screen_locked); 190 fake_session_manager_client_->set_is_screen_locked(is_screen_locked);
(...skipping 20 matching lines...) Expand all
182 211
183 content::TestBrowserThreadBundle thread_bundle_; 212 content::TestBrowserThreadBundle thread_bundle_;
184 213
185 std::unique_ptr<TestingProfile> profile_; 214 std::unique_ptr<TestingProfile> profile_;
186 std::unique_ptr<chromeos::FakePowerManagerClient> fake_power_manager_client_; 215 std::unique_ptr<chromeos::FakePowerManagerClient> fake_power_manager_client_;
187 std::unique_ptr<ExtendedFakeSessionManagerClient> 216 std::unique_ptr<ExtendedFakeSessionManagerClient>
188 fake_session_manager_client_; 217 fake_session_manager_client_;
189 std::unique_ptr<TestingPrefServiceSimple> test_pref_service_; 218 std::unique_ptr<TestingPrefServiceSimple> test_pref_service_;
190 std::unique_ptr<NiceMock<MockCryptAuthDeviceManager>> 219 std::unique_ptr<NiceMock<MockCryptAuthDeviceManager>>
191 mock_cryptauth_device_manager_; 220 mock_cryptauth_device_manager_;
221 TestInitializerDelegate* test_initializer_delegate_;
192 std::unique_ptr<cryptauth::FakeCryptAuthService> fake_cryptauth_service_; 222 std::unique_ptr<cryptauth::FakeCryptAuthService> fake_cryptauth_service_;
193 scoped_refptr<device::MockBluetoothAdapter> mock_adapter_; 223 scoped_refptr<device::MockBluetoothAdapter> mock_adapter_;
194 std::unique_ptr<TestTetherService> tether_service_; 224 std::unique_ptr<TestTetherService> tether_service_;
195 225
196 private: 226 private:
197 DISALLOW_COPY_AND_ASSIGN(TetherServiceTest); 227 DISALLOW_COPY_AND_ASSIGN(TetherServiceTest);
198 }; 228 };
199 229
200 TEST_F(TetherServiceTest, TestShutdown) { 230 TEST_F(TetherServiceTest, TestShutdown) {
201 CreateTetherService(); 231 CreateTetherService();
232 EXPECT_TRUE(test_initializer_delegate_->is_tether_running());
202 233
203 ShutdownTetherService(); 234 ShutdownTetherService();
204 235
205 EXPECT_EQ( 236 EXPECT_EQ(
206 chromeos::NetworkStateHandler::TechnologyState::TECHNOLOGY_UNAVAILABLE, 237 chromeos::NetworkStateHandler::TechnologyState::TECHNOLOGY_UNAVAILABLE,
207 network_state_handler()->GetTechnologyState( 238 network_state_handler()->GetTechnologyState(
208 chromeos::NetworkTypePattern::Tether())); 239 chromeos::NetworkTypePattern::Tether()));
240 EXPECT_FALSE(test_initializer_delegate_->is_tether_running());
209 } 241 }
210 242
211 TEST_F(TetherServiceTest, TestSuspend) { 243 TEST_F(TetherServiceTest, TestSuspend) {
212 CreateTetherService(); 244 CreateTetherService();
245 EXPECT_TRUE(test_initializer_delegate_->is_tether_running());
213 246
214 fake_power_manager_client_->SendSuspendImminent(); 247 fake_power_manager_client_->SendSuspendImminent();
215 248
216 EXPECT_EQ( 249 EXPECT_EQ(
217 chromeos::NetworkStateHandler::TechnologyState::TECHNOLOGY_UNAVAILABLE, 250 chromeos::NetworkStateHandler::TechnologyState::TECHNOLOGY_UNAVAILABLE,
218 network_state_handler()->GetTechnologyState( 251 network_state_handler()->GetTechnologyState(
219 chromeos::NetworkTypePattern::Tether())); 252 chromeos::NetworkTypePattern::Tether()));
253 EXPECT_FALSE(test_initializer_delegate_->is_tether_running());
220 254
221 fake_power_manager_client_->SendSuspendDone(); 255 fake_power_manager_client_->SendSuspendDone();
222 256
223 EXPECT_EQ(chromeos::NetworkStateHandler::TechnologyState::TECHNOLOGY_ENABLED, 257 EXPECT_EQ(chromeos::NetworkStateHandler::TechnologyState::TECHNOLOGY_ENABLED,
224 network_state_handler()->GetTechnologyState( 258 network_state_handler()->GetTechnologyState(
225 chromeos::NetworkTypePattern::Tether())); 259 chromeos::NetworkTypePattern::Tether()));
260 EXPECT_TRUE(test_initializer_delegate_->is_tether_running());
226 } 261 }
227 262
228 TEST_F(TetherServiceTest, TestScreenLock) { 263 TEST_F(TetherServiceTest, TestScreenLock) {
229 CreateTetherService(); 264 CreateTetherService();
265 EXPECT_TRUE(test_initializer_delegate_->is_tether_running());
230 266
231 SetIsScreenLocked(true); 267 SetIsScreenLocked(true);
232 268
233 EXPECT_EQ( 269 EXPECT_EQ(
234 chromeos::NetworkStateHandler::TechnologyState::TECHNOLOGY_UNAVAILABLE, 270 chromeos::NetworkStateHandler::TechnologyState::TECHNOLOGY_UNAVAILABLE,
235 network_state_handler()->GetTechnologyState( 271 network_state_handler()->GetTechnologyState(
236 chromeos::NetworkTypePattern::Tether())); 272 chromeos::NetworkTypePattern::Tether()));
273 EXPECT_FALSE(test_initializer_delegate_->is_tether_running());
237 274
238 SetIsScreenLocked(false); 275 SetIsScreenLocked(false);
239 276
240 EXPECT_EQ(chromeos::NetworkStateHandler::TechnologyState::TECHNOLOGY_ENABLED, 277 EXPECT_EQ(chromeos::NetworkStateHandler::TechnologyState::TECHNOLOGY_ENABLED,
241 network_state_handler()->GetTechnologyState( 278 network_state_handler()->GetTechnologyState(
242 chromeos::NetworkTypePattern::Tether())); 279 chromeos::NetworkTypePattern::Tether()));
280 EXPECT_TRUE(test_initializer_delegate_->is_tether_running());
243 } 281 }
244 282
245 TEST_F(TetherServiceTest, TestFeatureFlagDisabled) { 283 TEST_F(TetherServiceTest, TestFeatureFlagDisabled) {
246 EXPECT_FALSE(TetherService::Get(profile_.get())); 284 EXPECT_FALSE(TetherService::Get(profile_.get()));
247 } 285 }
248 286
249 TEST_F(TetherServiceTest, TestFeatureFlagEnabled) { 287 TEST_F(TetherServiceTest, TestFeatureFlagEnabled) {
250 base::test::ScopedFeatureList feature_list; 288 base::test::ScopedFeatureList feature_list;
251 feature_list.InitAndEnableFeature(features::kInstantTethering); 289 feature_list.InitAndEnableFeature(features::kInstantTethering);
252 290
253 TetherService* tether_service = TetherService::Get(profile_.get()); 291 TetherService* tether_service = TetherService::Get(profile_.get());
254 ASSERT_TRUE(tether_service); 292 ASSERT_TRUE(tether_service);
255 base::RunLoop().RunUntilIdle(); 293 base::RunLoop().RunUntilIdle();
256 tether_service->Shutdown(); 294 tether_service->Shutdown();
257 } 295 }
258 296
259 TEST_F(TetherServiceTest, TestNoTetherHosts) { 297 TEST_F(TetherServiceTest, TestNoTetherHosts) {
260 ON_CALL(*mock_cryptauth_device_manager_, GetTetherHosts()) 298 ON_CALL(*mock_cryptauth_device_manager_, GetTetherHosts())
261 .WillByDefault(Return(std::vector<cryptauth::ExternalDeviceInfo>())); 299 .WillByDefault(Return(std::vector<cryptauth::ExternalDeviceInfo>()));
262 300
263 CreateTetherService(); 301 CreateTetherService();
264 302
265 EXPECT_EQ( 303 EXPECT_EQ(
266 chromeos::NetworkStateHandler::TechnologyState::TECHNOLOGY_UNAVAILABLE, 304 chromeos::NetworkStateHandler::TechnologyState::TECHNOLOGY_UNAVAILABLE,
267 network_state_handler()->GetTechnologyState( 305 network_state_handler()->GetTechnologyState(
268 chromeos::NetworkTypePattern::Tether())); 306 chromeos::NetworkTypePattern::Tether()));
307 EXPECT_FALSE(test_initializer_delegate_->is_tether_running());
269 } 308 }
270 309
271 TEST_F(TetherServiceTest, TestProhibitedByPolicy) { 310 TEST_F(TetherServiceTest, TestProhibitedByPolicy) {
272 profile_->GetPrefs()->SetBoolean(prefs::kInstantTetheringAllowed, false); 311 profile_->GetPrefs()->SetBoolean(prefs::kInstantTetheringAllowed, false);
273 312
274 CreateTetherService(); 313 CreateTetherService();
275 314
276 EXPECT_EQ( 315 EXPECT_EQ(
277 chromeos::NetworkStateHandler::TechnologyState::TECHNOLOGY_PROHIBITED, 316 chromeos::NetworkStateHandler::TechnologyState::TECHNOLOGY_PROHIBITED,
278 network_state_handler()->GetTechnologyState( 317 network_state_handler()->GetTechnologyState(
279 chromeos::NetworkTypePattern::Tether())); 318 chromeos::NetworkTypePattern::Tether()));
319 EXPECT_FALSE(test_initializer_delegate_->is_tether_running());
280 } 320 }
281 321
282 TEST_F(TetherServiceTest, TestBluetoothIsNotPowered) { 322 TEST_F(TetherServiceTest, TestBluetoothIsNotPowered) {
283 ON_CALL(*mock_adapter_, IsPowered()).WillByDefault(Return(false)); 323 ON_CALL(*mock_adapter_, IsPowered()).WillByDefault(Return(false));
284 324
285 CreateTetherService(); 325 CreateTetherService();
286 326
287 EXPECT_EQ( 327 EXPECT_EQ(
288 chromeos::NetworkStateHandler::TechnologyState::TECHNOLOGY_UNINITIALIZED, 328 chromeos::NetworkStateHandler::TechnologyState::TECHNOLOGY_UNINITIALIZED,
289 network_state_handler()->GetTechnologyState( 329 network_state_handler()->GetTechnologyState(
290 chromeos::NetworkTypePattern::Tether())); 330 chromeos::NetworkTypePattern::Tether()));
331 EXPECT_FALSE(test_initializer_delegate_->is_tether_running());
291 } 332 }
292 333
293 TEST_F(TetherServiceTest, TestCellularIsUnavailable) { 334 TEST_F(TetherServiceTest, TestCellularIsUnavailable) {
294 test_manager_client()->RemoveTechnology(shill::kTypeCellular); 335 test_manager_client()->RemoveTechnology(shill::kTypeCellular);
295 ASSERT_EQ( 336 ASSERT_EQ(
296 chromeos::NetworkStateHandler::TechnologyState::TECHNOLOGY_UNAVAILABLE, 337 chromeos::NetworkStateHandler::TechnologyState::TECHNOLOGY_UNAVAILABLE,
297 network_state_handler()->GetTechnologyState( 338 network_state_handler()->GetTechnologyState(
298 chromeos::NetworkTypePattern::Cellular())); 339 chromeos::NetworkTypePattern::Cellular()));
299 340
300 CreateTetherService(); 341 CreateTetherService();
301 342
302 SetTetherTechnologyStateEnabled(false); 343 SetTetherTechnologyStateEnabled(false);
303 EXPECT_EQ( 344 EXPECT_EQ(
304 chromeos::NetworkStateHandler::TechnologyState::TECHNOLOGY_AVAILABLE, 345 chromeos::NetworkStateHandler::TechnologyState::TECHNOLOGY_AVAILABLE,
305 network_state_handler()->GetTechnologyState( 346 network_state_handler()->GetTechnologyState(
306 chromeos::NetworkTypePattern::Tether())); 347 chromeos::NetworkTypePattern::Tether()));
348 EXPECT_FALSE(test_initializer_delegate_->is_tether_running());
307 349
308 SetTetherTechnologyStateEnabled(true); 350 SetTetherTechnologyStateEnabled(true);
309 EXPECT_EQ(chromeos::NetworkStateHandler::TechnologyState::TECHNOLOGY_ENABLED, 351 EXPECT_EQ(chromeos::NetworkStateHandler::TechnologyState::TECHNOLOGY_ENABLED,
310 network_state_handler()->GetTechnologyState( 352 network_state_handler()->GetTechnologyState(
311 chromeos::NetworkTypePattern::Tether())); 353 chromeos::NetworkTypePattern::Tether()));
354 EXPECT_TRUE(test_initializer_delegate_->is_tether_running());
312 } 355 }
313 356
314 TEST_F(TetherServiceTest, TestCellularIsAvailable) { 357 TEST_F(TetherServiceTest, TestCellularIsAvailable) {
315 // TODO (lesliewatkins): Investigate why cellular needs to be removed and 358 // TODO (lesliewatkins): Investigate why cellular needs to be removed and
316 // re-added for NetworkStateHandler to return the correct TechnologyState. 359 // re-added for NetworkStateHandler to return the correct TechnologyState.
317 test_manager_client()->RemoveTechnology(shill::kTypeCellular); 360 test_manager_client()->RemoveTechnology(shill::kTypeCellular);
318 test_manager_client()->AddTechnology(shill::kTypeCellular, false); 361 test_manager_client()->AddTechnology(shill::kTypeCellular, false);
319 362
320 CreateTetherService(); 363 CreateTetherService();
321 364
322 // Cellular disabled 365 // Cellular disabled
323 SetCellularTechnologyStateEnabled(false); 366 SetCellularTechnologyStateEnabled(false);
324 ASSERT_EQ( 367 ASSERT_EQ(
325 chromeos::NetworkStateHandler::TechnologyState::TECHNOLOGY_AVAILABLE, 368 chromeos::NetworkStateHandler::TechnologyState::TECHNOLOGY_AVAILABLE,
326 network_state_handler()->GetTechnologyState( 369 network_state_handler()->GetTechnologyState(
327 chromeos::NetworkTypePattern::Cellular())); 370 chromeos::NetworkTypePattern::Cellular()));
371 EXPECT_FALSE(test_initializer_delegate_->is_tether_running());
328 372
329 SetTetherTechnologyStateEnabled(false); 373 SetTetherTechnologyStateEnabled(false);
330 EXPECT_EQ( 374 EXPECT_EQ(
331 chromeos::NetworkStateHandler::TechnologyState::TECHNOLOGY_UNINITIALIZED, 375 chromeos::NetworkStateHandler::TechnologyState::TECHNOLOGY_UNINITIALIZED,
332 network_state_handler()->GetTechnologyState( 376 network_state_handler()->GetTechnologyState(
333 chromeos::NetworkTypePattern::Tether())); 377 chromeos::NetworkTypePattern::Tether()));
378 EXPECT_FALSE(test_initializer_delegate_->is_tether_running());
334 379
335 SetTetherTechnologyStateEnabled(true); 380 SetTetherTechnologyStateEnabled(true);
336 EXPECT_EQ( 381 EXPECT_EQ(
337 chromeos::NetworkStateHandler::TechnologyState::TECHNOLOGY_UNINITIALIZED, 382 chromeos::NetworkStateHandler::TechnologyState::TECHNOLOGY_UNINITIALIZED,
338 network_state_handler()->GetTechnologyState( 383 network_state_handler()->GetTechnologyState(
339 chromeos::NetworkTypePattern::Tether())); 384 chromeos::NetworkTypePattern::Tether()));
385 EXPECT_FALSE(test_initializer_delegate_->is_tether_running());
340 386
341 // Cellular enabled 387 // Cellular enabled
342 SetCellularTechnologyStateEnabled(true); 388 SetCellularTechnologyStateEnabled(true);
343 ASSERT_EQ(chromeos::NetworkStateHandler::TechnologyState::TECHNOLOGY_ENABLED, 389 ASSERT_EQ(chromeos::NetworkStateHandler::TechnologyState::TECHNOLOGY_ENABLED,
344 network_state_handler()->GetTechnologyState( 390 network_state_handler()->GetTechnologyState(
345 chromeos::NetworkTypePattern::Cellular())); 391 chromeos::NetworkTypePattern::Cellular()));
392 EXPECT_TRUE(test_initializer_delegate_->is_tether_running());
346 393
347 SetTetherTechnologyStateEnabled(false); 394 SetTetherTechnologyStateEnabled(false);
348 EXPECT_EQ( 395 EXPECT_EQ(
349 chromeos::NetworkStateHandler::TechnologyState::TECHNOLOGY_AVAILABLE, 396 chromeos::NetworkStateHandler::TechnologyState::TECHNOLOGY_AVAILABLE,
350 network_state_handler()->GetTechnologyState( 397 network_state_handler()->GetTechnologyState(
351 chromeos::NetworkTypePattern::Tether())); 398 chromeos::NetworkTypePattern::Tether()));
399 EXPECT_FALSE(test_initializer_delegate_->is_tether_running());
352 400
353 SetTetherTechnologyStateEnabled(true); 401 SetTetherTechnologyStateEnabled(true);
354 EXPECT_EQ(chromeos::NetworkStateHandler::TechnologyState::TECHNOLOGY_ENABLED, 402 EXPECT_EQ(chromeos::NetworkStateHandler::TechnologyState::TECHNOLOGY_ENABLED,
355 network_state_handler()->GetTechnologyState( 403 network_state_handler()->GetTechnologyState(
356 chromeos::NetworkTypePattern::Tether())); 404 chromeos::NetworkTypePattern::Tether()));
405 EXPECT_TRUE(test_initializer_delegate_->is_tether_running());
357 } 406 }
358 407
359 TEST_F(TetherServiceTest, TestEnabled) { 408 TEST_F(TetherServiceTest, TestEnabled) {
360 CreateTetherService(); 409 CreateTetherService();
361 410
362 EXPECT_EQ(chromeos::NetworkStateHandler::TechnologyState::TECHNOLOGY_ENABLED, 411 EXPECT_EQ(chromeos::NetworkStateHandler::TechnologyState::TECHNOLOGY_ENABLED,
363 network_state_handler()->GetTechnologyState( 412 network_state_handler()->GetTechnologyState(
364 chromeos::NetworkTypePattern::Tether())); 413 chromeos::NetworkTypePattern::Tether()));
414 EXPECT_TRUE(test_initializer_delegate_->is_tether_running());
365 415
366 SetTetherTechnologyStateEnabled(false); 416 SetTetherTechnologyStateEnabled(false);
367 EXPECT_EQ( 417 EXPECT_EQ(
368 chromeos::NetworkStateHandler::TechnologyState::TECHNOLOGY_AVAILABLE, 418 chromeos::NetworkStateHandler::TechnologyState::TECHNOLOGY_AVAILABLE,
369 network_state_handler()->GetTechnologyState( 419 network_state_handler()->GetTechnologyState(
370 chromeos::NetworkTypePattern::Tether())); 420 chromeos::NetworkTypePattern::Tether()));
371 EXPECT_FALSE( 421 EXPECT_FALSE(
372 profile_->GetPrefs()->GetBoolean(prefs::kInstantTetheringEnabled)); 422 profile_->GetPrefs()->GetBoolean(prefs::kInstantTetheringEnabled));
423 EXPECT_FALSE(test_initializer_delegate_->is_tether_running());
373 424
374 SetTetherTechnologyStateEnabled(true); 425 SetTetherTechnologyStateEnabled(true);
375 EXPECT_EQ(chromeos::NetworkStateHandler::TechnologyState::TECHNOLOGY_ENABLED, 426 EXPECT_EQ(chromeos::NetworkStateHandler::TechnologyState::TECHNOLOGY_ENABLED,
376 network_state_handler()->GetTechnologyState( 427 network_state_handler()->GetTechnologyState(
377 chromeos::NetworkTypePattern::Tether())); 428 chromeos::NetworkTypePattern::Tether()));
378 EXPECT_TRUE( 429 EXPECT_TRUE(
379 profile_->GetPrefs()->GetBoolean(prefs::kInstantTetheringEnabled)); 430 profile_->GetPrefs()->GetBoolean(prefs::kInstantTetheringEnabled));
431 EXPECT_TRUE(test_initializer_delegate_->is_tether_running());
380 } 432 }
381 433
382 // Test against a past defect that made TetherService and NetworkStateHandler 434 // Test against a past defect that made TetherService and NetworkStateHandler
383 // repeatly update technology state after the other did so. TetherService should 435 // repeatly update technology state after the other did so. TetherService should
384 // only update technology state if NetworkStateHandler has provided a different 436 // only update technology state if NetworkStateHandler has provided a different
385 // state than the user preference. 437 // state than the user preference.
386 TEST_F(TetherServiceTest, TestEnabledMultipleChanges) { 438 TEST_F(TetherServiceTest, TestEnabledMultipleChanges) {
387 CreateTetherService(); 439 CreateTetherService();
388 // CreateTetherService calls RunUntilIdle() so UpdateTetherTechnologyState() 440 // CreateTetherService calls RunUntilIdle() so UpdateTetherTechnologyState()
389 // may be called multiple times in the initialization process. 441 // may be called multiple times in the initialization process.
390 int updated_technology_state_count = 442 int updated_technology_state_count =
391 tether_service_->updated_technology_state_count(); 443 tether_service_->updated_technology_state_count();
392 444
393 SetTetherTechnologyStateEnabled(false); 445 SetTetherTechnologyStateEnabled(false);
394 SetTetherTechnologyStateEnabled(false); 446 SetTetherTechnologyStateEnabled(false);
395 SetTetherTechnologyStateEnabled(false); 447 SetTetherTechnologyStateEnabled(false);
396 448
397 updated_technology_state_count++; 449 updated_technology_state_count++;
398 EXPECT_EQ(updated_technology_state_count, 450 EXPECT_EQ(updated_technology_state_count,
399 tether_service_->updated_technology_state_count()); 451 tether_service_->updated_technology_state_count());
400 452
401 SetTetherTechnologyStateEnabled(true); 453 SetTetherTechnologyStateEnabled(true);
402 SetTetherTechnologyStateEnabled(true); 454 SetTetherTechnologyStateEnabled(true);
403 SetTetherTechnologyStateEnabled(true); 455 SetTetherTechnologyStateEnabled(true);
404 456
405 updated_technology_state_count++; 457 updated_technology_state_count++;
406 EXPECT_EQ(updated_technology_state_count, 458 EXPECT_EQ(updated_technology_state_count,
407 tether_service_->updated_technology_state_count()); 459 tether_service_->updated_technology_state_count());
408 } 460 }
OLDNEW
« no previous file with comments | « chrome/browser/chromeos/tether/tether_service.cc ('k') | chromeos/components/tether/initializer.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698