Никогда не используйте 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);
?>
Надеюсь, что все это поможет !!
Хорошо, я нашел решение.
Получил подсказки здесь .
Итак, дело в том, чтобы добавить инъекцию 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');
}
);