OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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 <string> | 5 #include <string> |
6 #include <vector> | 6 #include <vector> |
7 | 7 |
8 #include "base/strings/string16.h" | 8 #include "base/strings/string16.h" |
9 #include "base/strings/string_util.h" | 9 #include "base/strings/string_util.h" |
10 #include "base/strings/utf_string_conversions.h" | 10 #include "base/strings/utf_string_conversions.h" |
(...skipping 303 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
314 state_handler_->ChangeState( | 314 state_handler_->ChangeState( |
315 EasyUnlockScreenlockStateHandler::STATE_BLUETOOTH_CONNECTING); | 315 EasyUnlockScreenlockStateHandler::STATE_BLUETOOTH_CONNECTING); |
316 | 316 |
317 EXPECT_EQ(1u, lock_handler_->GetAndResetShowIconCount()); | 317 EXPECT_EQ(1u, lock_handler_->GetAndResetShowIconCount()); |
318 EXPECT_EQ(ScreenlockBridge::LockHandler::OFFLINE_PASSWORD, | 318 EXPECT_EQ(ScreenlockBridge::LockHandler::OFFLINE_PASSWORD, |
319 lock_handler_->GetAuthType(user_email_)); | 319 lock_handler_->GetAuthType(user_email_)); |
320 | 320 |
321 ASSERT_TRUE(lock_handler_->HasCustomIcon()); | 321 ASSERT_TRUE(lock_handler_->HasCustomIcon()); |
322 EXPECT_EQ(kSpinnerIconURL, lock_handler_->GetCustomIconURL()); | 322 EXPECT_EQ(kSpinnerIconURL, lock_handler_->GetCustomIconURL()); |
323 EXPECT_FALSE(lock_handler_->CustomIconHasTooltip()); | 323 EXPECT_FALSE(lock_handler_->CustomIconHasTooltip()); |
324 EXPECT_FALSE(lock_handler_->CustomIconHardlocksOnClick()); | 324 EXPECT_TRUE(lock_handler_->CustomIconHardlocksOnClick()); |
325 EXPECT_TRUE(lock_handler_->IsCustomIconAnimated()); | 325 EXPECT_TRUE(lock_handler_->IsCustomIconAnimated()); |
326 EXPECT_EQ(100, lock_handler_->GetCustomIconOpacity()); | 326 EXPECT_EQ(100, lock_handler_->GetCustomIconOpacity()); |
327 | 327 |
328 state_handler_->ChangeState( | 328 state_handler_->ChangeState( |
329 EasyUnlockScreenlockStateHandler::STATE_BLUETOOTH_CONNECTING); | 329 EasyUnlockScreenlockStateHandler::STATE_BLUETOOTH_CONNECTING); |
330 // Duplicated state change should be ignored. | 330 // Duplicated state change should be ignored. |
331 EXPECT_EQ(0u, lock_handler_->GetAndResetShowIconCount()); | 331 EXPECT_EQ(0u, lock_handler_->GetAndResetShowIconCount()); |
332 } | 332 } |
333 | 333 |
334 TEST_F(EasyUnlockScreenlockStateHandlerTest, PhoneLocked) { | 334 TEST_F(EasyUnlockScreenlockStateHandlerTest, PhoneLocked) { |
335 pref_service_->SetBoolean(prefs::kEasyUnlockShowTutorial, false); | 335 pref_service_->SetBoolean(prefs::kEasyUnlockShowTutorial, false); |
336 state_handler_->ChangeState( | 336 state_handler_->ChangeState( |
337 EasyUnlockScreenlockStateHandler::STATE_PHONE_LOCKED); | 337 EasyUnlockScreenlockStateHandler::STATE_PHONE_LOCKED); |
338 | 338 |
339 EXPECT_EQ(1u, lock_handler_->GetAndResetShowIconCount()); | 339 EXPECT_EQ(1u, lock_handler_->GetAndResetShowIconCount()); |
340 EXPECT_EQ(ScreenlockBridge::LockHandler::OFFLINE_PASSWORD, | 340 EXPECT_EQ(ScreenlockBridge::LockHandler::OFFLINE_PASSWORD, |
341 lock_handler_->GetAuthType(user_email_)); | 341 lock_handler_->GetAuthType(user_email_)); |
342 | 342 |
343 ASSERT_TRUE(lock_handler_->HasCustomIcon()); | 343 ASSERT_TRUE(lock_handler_->HasCustomIcon()); |
344 EXPECT_EQ(kLockedIconURL, lock_handler_->GetCustomIconURL()); | 344 EXPECT_EQ(kLockedIconURL, lock_handler_->GetCustomIconURL()); |
345 EXPECT_TRUE(lock_handler_->CustomIconHasTooltip()); | 345 EXPECT_TRUE(lock_handler_->CustomIconHasTooltip()); |
346 EXPECT_FALSE(lock_handler_->IsCustomIconTooltipAutoshown()); | 346 EXPECT_FALSE(lock_handler_->IsCustomIconTooltipAutoshown()); |
347 EXPECT_FALSE(lock_handler_->CustomIconHardlocksOnClick()); | 347 EXPECT_TRUE(lock_handler_->CustomIconHardlocksOnClick()); |
348 EXPECT_FALSE(lock_handler_->IsCustomIconAnimated()); | 348 EXPECT_FALSE(lock_handler_->IsCustomIconAnimated()); |
349 EXPECT_EQ(100, lock_handler_->GetCustomIconOpacity()); | 349 EXPECT_EQ(100, lock_handler_->GetCustomIconOpacity()); |
350 | 350 |
351 state_handler_->ChangeState( | 351 state_handler_->ChangeState( |
352 EasyUnlockScreenlockStateHandler::STATE_PHONE_LOCKED); | 352 EasyUnlockScreenlockStateHandler::STATE_PHONE_LOCKED); |
353 // Duplicated state change should be ignored. | 353 // Duplicated state change should be ignored. |
354 EXPECT_EQ(0u, lock_handler_->GetAndResetShowIconCount()); | 354 EXPECT_EQ(0u, lock_handler_->GetAndResetShowIconCount()); |
355 } | 355 } |
356 | 356 |
357 TEST_F(EasyUnlockScreenlockStateHandlerTest, PhoneNotAuthenticated) { | 357 TEST_F(EasyUnlockScreenlockStateHandlerTest, PhoneNotAuthenticated) { |
358 pref_service_->SetBoolean(prefs::kEasyUnlockShowTutorial, false); | 358 pref_service_->SetBoolean(prefs::kEasyUnlockShowTutorial, false); |
359 state_handler_->ChangeState( | 359 state_handler_->ChangeState( |
360 EasyUnlockScreenlockStateHandler::STATE_PHONE_NOT_AUTHENTICATED); | 360 EasyUnlockScreenlockStateHandler::STATE_PHONE_NOT_AUTHENTICATED); |
361 | 361 |
362 EXPECT_EQ(1u, lock_handler_->GetAndResetShowIconCount()); | 362 EXPECT_EQ(1u, lock_handler_->GetAndResetShowIconCount()); |
363 EXPECT_EQ(ScreenlockBridge::LockHandler::OFFLINE_PASSWORD, | 363 EXPECT_EQ(ScreenlockBridge::LockHandler::OFFLINE_PASSWORD, |
364 lock_handler_->GetAuthType(user_email_)); | 364 lock_handler_->GetAuthType(user_email_)); |
365 | 365 |
366 ASSERT_TRUE(lock_handler_->HasCustomIcon()); | 366 ASSERT_TRUE(lock_handler_->HasCustomIcon()); |
367 EXPECT_EQ(kLockedIconURL, lock_handler_->GetCustomIconURL()); | 367 EXPECT_EQ(kLockedIconURL, lock_handler_->GetCustomIconURL()); |
368 EXPECT_TRUE(lock_handler_->CustomIconHasTooltip()); | 368 EXPECT_TRUE(lock_handler_->CustomIconHasTooltip()); |
369 EXPECT_FALSE(lock_handler_->IsCustomIconTooltipAutoshown()); | 369 EXPECT_FALSE(lock_handler_->IsCustomIconTooltipAutoshown()); |
370 EXPECT_FALSE(lock_handler_->CustomIconHardlocksOnClick()); | 370 EXPECT_TRUE(lock_handler_->CustomIconHardlocksOnClick()); |
371 EXPECT_FALSE(lock_handler_->IsCustomIconAnimated()); | 371 EXPECT_FALSE(lock_handler_->IsCustomIconAnimated()); |
372 EXPECT_EQ(100, lock_handler_->GetCustomIconOpacity()); | 372 EXPECT_EQ(100, lock_handler_->GetCustomIconOpacity()); |
373 | 373 |
374 state_handler_->ChangeState( | 374 state_handler_->ChangeState( |
375 EasyUnlockScreenlockStateHandler::STATE_PHONE_NOT_AUTHENTICATED); | 375 EasyUnlockScreenlockStateHandler::STATE_PHONE_NOT_AUTHENTICATED); |
376 // Duplicated state change should be ignored. | 376 // Duplicated state change should be ignored. |
377 EXPECT_EQ(0u, lock_handler_->GetAndResetShowIconCount()); | 377 EXPECT_EQ(0u, lock_handler_->GetAndResetShowIconCount()); |
378 } | 378 } |
379 | 379 |
380 TEST_F(EasyUnlockScreenlockStateHandlerTest, StatesWithOpaqueIcons) { | 380 TEST_F(EasyUnlockScreenlockStateHandlerTest, StatesWithOpaqueIcons) { |
(...skipping 15 matching lines...) Expand all Loading... |
396 << "State: " << states[i]; | 396 << "State: " << states[i]; |
397 | 397 |
398 ASSERT_TRUE(lock_handler_->HasCustomIcon()) | 398 ASSERT_TRUE(lock_handler_->HasCustomIcon()) |
399 << "State: " << states[i]; | 399 << "State: " << states[i]; |
400 EXPECT_EQ(kLockedIconURL, lock_handler_->GetCustomIconURL()) | 400 EXPECT_EQ(kLockedIconURL, lock_handler_->GetCustomIconURL()) |
401 << "State: " << states[i]; | 401 << "State: " << states[i]; |
402 EXPECT_TRUE(lock_handler_->CustomIconHasTooltip()) | 402 EXPECT_TRUE(lock_handler_->CustomIconHasTooltip()) |
403 << "State: " << states[i]; | 403 << "State: " << states[i]; |
404 EXPECT_FALSE(lock_handler_->IsCustomIconTooltipAutoshown()) | 404 EXPECT_FALSE(lock_handler_->IsCustomIconTooltipAutoshown()) |
405 << "State: " << states[i]; | 405 << "State: " << states[i]; |
406 EXPECT_FALSE(lock_handler_->CustomIconHardlocksOnClick()) | 406 EXPECT_TRUE(lock_handler_->CustomIconHardlocksOnClick()) |
407 << "State: " << states[i]; | 407 << "State: " << states[i]; |
408 EXPECT_FALSE(lock_handler_->IsCustomIconAnimated()) | 408 EXPECT_FALSE(lock_handler_->IsCustomIconAnimated()) |
409 << "State: " << states[i]; | 409 << "State: " << states[i]; |
410 EXPECT_EQ(50, lock_handler_->GetCustomIconOpacity()) | 410 EXPECT_EQ(50, lock_handler_->GetCustomIconOpacity()) |
411 << "State: " << states[i]; | 411 << "State: " << states[i]; |
412 | 412 |
413 state_handler_->ChangeState(states[i]); | 413 state_handler_->ChangeState(states[i]); |
414 EXPECT_EQ(0u, lock_handler_->GetAndResetShowIconCount()) | 414 EXPECT_EQ(0u, lock_handler_->GetAndResetShowIconCount()) |
415 << "State: " << states[i]; | 415 << "State: " << states[i]; |
416 } | 416 } |
(...skipping 59 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
476 | 476 |
477 EXPECT_EQ(1u, lock_handler_->GetAndResetShowIconCount()); | 477 EXPECT_EQ(1u, lock_handler_->GetAndResetShowIconCount()); |
478 EXPECT_EQ(ScreenlockBridge::LockHandler::OFFLINE_PASSWORD, | 478 EXPECT_EQ(ScreenlockBridge::LockHandler::OFFLINE_PASSWORD, |
479 lock_handler_->GetAuthType(user_email_)); | 479 lock_handler_->GetAuthType(user_email_)); |
480 ASSERT_TRUE(lock_handler_->HasCustomIcon()); | 480 ASSERT_TRUE(lock_handler_->HasCustomIcon()); |
481 EXPECT_TRUE(lock_handler_->IsCustomIconAnimated()); | 481 EXPECT_TRUE(lock_handler_->IsCustomIconAnimated()); |
482 } | 482 } |
483 | 483 |
484 TEST_F(EasyUnlockScreenlockStateHandlerTest, | 484 TEST_F(EasyUnlockScreenlockStateHandlerTest, |
485 HardlockEnabledAfterInitialUnlock) { | 485 HardlockEnabledAfterInitialUnlock) { |
486 state_handler_->ChangeState( | 486 std::vector<EasyUnlockScreenlockStateHandler::State> states; |
487 EasyUnlockScreenlockStateHandler::STATE_AUTHENTICATED); | 487 states.push_back( |
| 488 EasyUnlockScreenlockStateHandler::STATE_BLUETOOTH_CONNECTING); |
| 489 states.push_back( |
| 490 EasyUnlockScreenlockStateHandler::STATE_PHONE_NOT_AUTHENTICATED); |
| 491 states.push_back(EasyUnlockScreenlockStateHandler::STATE_NO_BLUETOOTH); |
| 492 states.push_back(EasyUnlockScreenlockStateHandler::STATE_NO_PHONE); |
| 493 states.push_back(EasyUnlockScreenlockStateHandler::STATE_PHONE_UNSUPPORTED); |
| 494 states.push_back(EasyUnlockScreenlockStateHandler::STATE_PHONE_UNLOCKABLE); |
| 495 // This one should go last as changing state to AUTHENTICATED enables hard |
| 496 // locking. |
| 497 states.push_back(EasyUnlockScreenlockStateHandler::STATE_AUTHENTICATED); |
488 | 498 |
489 ASSERT_TRUE(lock_handler_->HasCustomIcon()); | 499 for (size_t i = 0; i < states.size(); ++i) { |
490 EXPECT_FALSE(lock_handler_->CustomIconHardlocksOnClick()); | 500 state_handler_->ChangeState(states[i]); |
| 501 ASSERT_TRUE(lock_handler_->HasCustomIcon()) << "State: " << states[i]; |
| 502 EXPECT_FALSE(lock_handler_->CustomIconHardlocksOnClick()) |
| 503 << "State: " << states[i]; |
| 504 } |
491 | 505 |
492 ScreenlockBridge::Get()->SetLockHandler(NULL); | 506 ScreenlockBridge::Get()->SetLockHandler(NULL); |
493 lock_handler_.reset(new TestLockHandler(user_email_)); | 507 lock_handler_.reset(new TestLockHandler(user_email_)); |
494 ScreenlockBridge::Get()->SetLockHandler(lock_handler_.get()); | 508 ScreenlockBridge::Get()->SetLockHandler(lock_handler_.get()); |
495 | 509 |
496 ASSERT_TRUE(lock_handler_->HasCustomIcon()); | 510 for (size_t i = 0; i < states.size(); ++i) { |
497 EXPECT_TRUE(lock_handler_->CustomIconHardlocksOnClick()); | 511 state_handler_->ChangeState(states[i]); |
| 512 ASSERT_TRUE(lock_handler_->HasCustomIcon()) << "State: " << states[i]; |
| 513 EXPECT_TRUE(lock_handler_->CustomIconHardlocksOnClick()) |
| 514 << "State: " << states[i]; |
| 515 } |
498 } | 516 } |
499 | 517 |
500 TEST_F(EasyUnlockScreenlockStateHandlerTest, InactiveStateHidesIcon) { | 518 TEST_F(EasyUnlockScreenlockStateHandlerTest, InactiveStateHidesIcon) { |
501 state_handler_->ChangeState( | 519 state_handler_->ChangeState( |
502 EasyUnlockScreenlockStateHandler::STATE_AUTHENTICATED); | 520 EasyUnlockScreenlockStateHandler::STATE_AUTHENTICATED); |
503 | 521 |
504 ASSERT_TRUE(lock_handler_->HasCustomIcon()); | 522 ASSERT_TRUE(lock_handler_->HasCustomIcon()); |
505 | 523 |
506 state_handler_->ChangeState( | 524 state_handler_->ChangeState( |
507 EasyUnlockScreenlockStateHandler::STATE_INACTIVE); | 525 EasyUnlockScreenlockStateHandler::STATE_INACTIVE); |
(...skipping 88 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
596 state_handler_->ChangeState( | 614 state_handler_->ChangeState( |
597 EasyUnlockScreenlockStateHandler::STATE_AUTHENTICATED); | 615 EasyUnlockScreenlockStateHandler::STATE_AUTHENTICATED); |
598 EXPECT_EQ(1u, lock_handler_->GetAndResetShowIconCount()); | 616 EXPECT_EQ(1u, lock_handler_->GetAndResetShowIconCount()); |
599 EXPECT_TRUE(lock_handler_->HasCustomIcon()); | 617 EXPECT_TRUE(lock_handler_->HasCustomIcon()); |
600 EXPECT_EQ(ScreenlockBridge::LockHandler::USER_CLICK, | 618 EXPECT_EQ(ScreenlockBridge::LockHandler::USER_CLICK, |
601 lock_handler_->GetAuthType(user_email_)); | 619 lock_handler_->GetAuthType(user_email_)); |
602 EXPECT_TRUE(lock_handler_->CustomIconHardlocksOnClick()); | 620 EXPECT_TRUE(lock_handler_->CustomIconHardlocksOnClick()); |
603 } | 621 } |
604 | 622 |
605 } // namespace | 623 } // namespace |
OLD | NEW |