You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

44 lines
1.2 KiB

8 months ago
  1. <?php
  2. namespace tests\unit\models;
  3. use app\models\User;
  4. class UserTest extends \Codeception\Test\Unit
  5. {
  6. public function testFindUserById()
  7. {
  8. verify($user = User::findIdentity(100))->notEmpty();
  9. verify($user->username)->equals('admin');
  10. verify(User::findIdentity(999))->empty();
  11. }
  12. public function testFindUserByAccessToken()
  13. {
  14. verify($user = User::findIdentityByAccessToken('100-token'))->notEmpty();
  15. verify($user->username)->equals('admin');
  16. verify(User::findIdentityByAccessToken('non-existing'))->empty();
  17. }
  18. public function testFindUserByUsername()
  19. {
  20. verify($user = User::findByUsername('admin'))->notEmpty();
  21. verify(User::findByUsername('not-admin'))->empty();
  22. }
  23. /**
  24. * @depends testFindUserByUsername
  25. */
  26. public function testValidateUser()
  27. {
  28. $user = User::findByUsername('admin');
  29. verify($user->validateAuthKey('test100key'))->notEmpty();
  30. verify($user->validateAuthKey('test102key'))->empty();
  31. verify($user->validatePassword('admin'))->notEmpty();
  32. verify($user->validatePassword('123456'))->empty();
  33. }
  34. }