Как выполнить модульное тестирование JS Async с Jasmine Mocking

Никогда не используйте md5 () для защиты вашего пароля, даже с солью, это всегда опасно!

Сделайте свой пароль с последними алгоритмами хеширования, как показано ниже.


Для сопоставления с зашифрованным паролем базы данных и введенным пользователем паролем используйте следующую функцию.


Если вы хотите использовать свою соль, используйте свою настраиваемую функцию для нее, просто следуйте ниже, но я не рекомендую это, поскольку он найден устаревшим в последних версиях PHP.

прочитайте это http://php.net/manual/en/function.password-hash.php до используйте ниже код.

 your_custom_function_for_salt(), 
    //write your own code to generate a suitable & secured salt
    'cost' => 12 // the default cost is 10
];

$hash = password_hash($your_password, PASSWORD_DEFAULT, $options);

?>

Надеюсь, что все это поможет !!

0
задан Randy Casburn 3 March 2019 в 01:13
поделиться

1 ответ

Хорошо, я нашел решение.

Получил подсказки здесь .

Итак, дело в том, чтобы добавить инъекцию rootScope. Это сработало после этого! :)

beforeEach(inject(function($injector) {
     service = $injector.get(
         'service');
     $httpBackend = $injector.get('$httpBackend');
     $rootScope = $injector.get('$rootScope');
 }));

 it('should use the rejection handler if varB is in invalid format',
     function() {
         var successHandler = jasmine.createSpy('success');
         var failHandler = jasmine.createSpy('fail');
         service.func('abc').then(successHandler, failHandler);
         $rootScope.$digest();
         expect(successHandler).not.toHaveBeenCalled();
         expect(failHandler).toHaveBeenCalledWith('varB has to be a number');
     }
 );
0
ответ дан Ujjwal Gulecha 3 March 2019 в 01:13
поделиться
Другие вопросы по тегам:

Похожие вопросы: