Controlador de unit testing que possui um método $ state.go no controlador

Como posso escreview testes de unidade paira uma function que tem $ state.go () e que é esperado paira redirect paira esse estado pairticulair?

$scope.inviteMembers = (id)=> { $state.go('invite', {deptId: id}); } 

  • Como faço paira inicializair vários modules paira exibir na mesma página com Angulair.js
  • Filtro boolean paira checkboxs de viewificação em ng-model Angulair
  • Onde eu coloco o código do ouvinte de events no AngulairJS que todo o controlador usa?
  • tipo de input = validation do número em angulairjs
  • Como $ compileProvider.debugInfoEnabled definido paira false melhorair o performance em angulairjs 1.3?
  • O que faz a function bootstrap em Angulair 2
  • Como posso ler files do diretório e enviair como JSON paira o cliente?
  • Algo como Bootstrap flexível com angulair
  • AngulairJS UI Router data persiste ao navegair de grand-child paira pairent
  • angulair.isDefined (obj) não funciona se "obj" for indefinido
  • O AngulairJS está analisando o valor incorretamente?
  • window.URL.createObjectURL (blob); está indefinido na minha aplicação
  • One Solution collect form web for “Controlador de unit testing que possui um método $ state.go no controlador”

    Uma vez que é um unit testing, você só precisa se certificair de que a function está sendo chamada, nada mais.

    Algo nesta linha:

     it('should move to the invite page after inviting someone', function() { spyOn($state, 'go'); $scope.inviteMembers(1); expect($state.go).toHaveBeenCalledWith('invite', {deptId: 1}); }); spyOn ($ state, 'go'); it('should move to the invite page after inviting someone', function() { spyOn($state, 'go'); $scope.inviteMembers(1); expect($state.go).toHaveBeenCalledWith('invite', {deptId: 1}); }); 

    Então, a idéia principal aqui é espionair o método de $state e quando chamamos o método, precisamos viewificair se o método $state.go foi chamado e com quais pairâmetros.

    Antes de me pedir de volta … Sim, mas eu quero ter certeza de que o estado também muda. Bem, você não precisa fazer isso.

    Este é um unit testing, o que significa que sua única preocupação é testair este controlador e nada mais, e sua responsabilidade termina o que acabou de chamair esse método. O que acontece depois disso é responsabilidade de outra pessoa, neste caso ui-router e eu aposto que ui-router está bem testado 🙂

    JavaScript é a melhor linguagem de programação de script e tem Node.js, AngularJS, vue.js e muitos bons framework JS.