Je tente de tester un contrôleur angularjs avec Karma, et jasmine. Voici ma suite de test: describe('Controllers', function(){ var $scope, ctrl; beforeEach(module('curriculumModule')); describe('CreateCurriculumCtrl', function(){ var mockBackend, location; beforeEach(inject(function($rootScope, $controller, _$httpBackend_, $location){ mockBackend = _$httpBackend_; location = $location; $scope = $rootScope.$new(); ctrl = $controller('CreateCurriculumCtrl', { $scope: $scope }); })); it('should save the curriculum', function(){ mockBackend.expectPost('bignibou/curriculum/new'); $scope.saveCurriculum(); […]
Quelle est la façon la plus élégante d'écrire des tests de l'unité Karma en moka qui ont tous deux une injection de dépendance et done ? Injection de dépendance: describe('cows', function(){ it('farts a lot', inject(function(cow){ // do stuff })) }) Terminé: describe('cows', function(){ it('farts a lot', function(done){ // do stuff }) }) Que faire si […]
J'ai le test suivant: it('should maintain a bind between the data at the $scope to the data at the ingredientsService', function(){ $scope.addFilters('val1', $scope.customFiltersData, 'filter1'); $scope.$digest(); expect($scope.customFiltersData).toEqual(ingredientsService.filters()); }); Je reçois l'erreur suivante: TypeError: undefined is not a function at Scope.$digest (/home/oleg/dev/vita-webapp-new/bower_components/angular/angular.js:12502:17) at null.<anonymous> (/home/oleg/dev/vita-webapp-new/test/spec/controllers/customfilters.js:92:20) Lors du débogage, j'ai vu ce $browser.$$checkUrlChange sur la ligne 12502 de […]
Je définis un certain code d'installation dans la fonction de config d'un module angulaire que je veux tester en unité. On ne sait pas très clairement comment je devrais le faire. Voici un testcase simplifié qui montre comment je me suis coincé: 'use strict'; angular.module('myModule', []).config(['$http', '$log', function($http, $log) { $http.get('/api/getkey').then(function success(response) { $log.log(response.data); }); […]
J'ai beaucoup de composants dans ma application qui répondent à différentes pressions de touches, et jusqu'à présent, aucun de mes tests qui utilisent TestUtils.Simulate.keyDown fonctionne pas du tout. Il semble que keyDown soit simple et simple ne fonctionne pas. Voici le composant que j'essaie de tester: Description.js var React = require('react/addons'); var Description = React.createClass({ […]
J'essaie de tester un module qui utilise angular-google-maps . Ca manque parce que angular.mock.inject ne trouve pas uiGmapGoogleMapApiProvider : Error: [$injector:unpr] Unknown provider: uiGmapGoogleMapApiProviderProvider <- uiGmapGoogleMapApiProvider Je ne peux pas comprendre ce qui ne va pas. Voici le testcase réduit: 'use strict'; describe('this spec', function() { beforeEach(module('uiGmapgoogle-maps')); it('tries to configure uiGmapGoogleMapApiProvider', inject(function(uiGmapGoogleMapApiProvider) { expect(uiGmapGoogleMapApiProvider.configure).toBeDefined(); })); […]
OK, cette question est similaire à celle posée ici: Impossible de charger "IE", il n'est pas enregistré! Message d'erreur sur Karma Sauf si je soupçonne que l'utilisateur a un problème de différenciation entre l'explorateur 32 bits et 64 bits. Mon problème concerne l'Explorateur 32 bits exécuté dans WinXP. Quand je lance le karma, je reçois […]
J'essaie de réécrire l'un de mes projets à l'aide de TypeScript et parce que je suis tout à fait nouveau dans TypeScript et RequireJS. Je ne suis pas sûr de ce que je manque. J'ai suivi ce guide Karma – RequireJS et j'ai tout vérifié, mais je n'ai pas réussi à le faire fonctionner au […]
J'essaie de tester en unité un service angulaire en utilisant: angular 1.3.8 angular-mocks 1.3.8 karma 0.13.19 jasmine 2.4.1 node 0.10.33 OS: Windows 7 Browser: PhantomJS 2.1.3 Le problème est que le service que je souhaite tester ( MyService ) n'est pas injecté dans le fichier de test par les MyService angulaires (c'est-à-dire que la méthode […]
LA SITUATION: Je teste la fonction qui permet à l'utilisateur de sélectionner une langue. Mais je reçois l'erreur suivante: TypeError: $translate.use is not a function J'ai vu des questions similaires dans les forums SO et d'autres, mais ils ne fonctionnent pas pour moi. LE CODE: La configuration: app.config(function($stateProvider, $urlRouterProvider, $translateProvider) { $translateProvider.useSanitizeValueStrategy('sanitize'); $translateProvider.translations('EN', { "MY_ACCOUNT": […]