Advertisement
Guest User

Untitled

a guest
Mar 28th, 2017
528
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.11 KB | None | 0 0
  1. (function () {
  2. "use strict"
  3. angular
  4. .module("myApp")
  5.  
  6. .controller("userCtrl",['$scope', '$state', 'userService', 'appSettings','md5','currentUser','$rootScope',
  7. function ($scope, $state, userService, appSettings,md5,currentUser, $rootScope) {
  8.  
  9. $scope.login = function() {
  10. $scope.loading = true;
  11. if($scope.password != null){
  12. var user ={
  13. username:$scope.username,
  14. password:md5.createHash($scope.password)
  15. }
  16.  
  17. var getData = userService.login(user);
  18. getData.then(function (response) {
  19. console.log(response);
  20. $scope.loading = false;
  21.  
  22. currentUser.setProfile(user.username, response.data.sessionId);
  23.  
  24. $state.go('videos');
  25. }, function (response) {
  26. console.log(response.data);
  27. });
  28. }else{
  29. $scope.msg = "Password field is empty!"
  30. }
  31. }
  32. }])
  33. }());
  34.  
  35. 'use strict';
  36.  
  37. describe('userCtrl', function() {
  38. beforeEach(module('myApp'));
  39. var scope, userCtrl, apiService,q, deferred, currentUser;
  40.  
  41. describe('$scope.login', function(){
  42. beforeEach(function(){
  43. apiService = {
  44. login: function () {
  45. deferred = q.defer();
  46. return deferred.promise;
  47. };
  48. };
  49. });
  50.  
  51. beforeEach(inject(function($controller, $rootScope, $q, _currentUser_){
  52. var user ={name:'ali',password:'password'};
  53. scope = $rootScope.$new();
  54. q = $q;
  55.  
  56. // The injector unwraps the underscores (_) from around the parameter names when matching
  57. userCtrl = $controller('userCtrl', {
  58. $scope:scope,
  59. userService:apiService
  60. });
  61. //userService = _userService_;
  62. currentUser = _currentUser_;
  63. }));
  64.  
  65. it('should call user service login', function() {
  66. spyOn(apiService, 'login').and.callThrough();
  67. scope.login();
  68. deferred.resolve(user);
  69.  
  70. expect(apiService.login).toHaveBeenCalled();
  71. });
  72.  
  73. it('checks the password field', function() {
  74. scope.login();
  75. expect(scope.msg).toEqual('Password field is empty!');
  76. });
  77.  
  78. });
  79. });
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement