Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

ReferenceError: Can't find variable: module in angular testing

Tags:

I'm trying to write a test for my Angular controller, I'm using jasmine karma and angular-mocks, but keeps on getting the error ReferenceError: Can't find variable: module.

I had a bit of a search, but I already have the angular-mocks in my bower.

What could I be missing here?

The following is my code:

#controller angular.module('cook_book_ctrl', []) .controller('cookBookCtrl', function($scope, CookBook, CookBookRecipesService){    $scope.cookbookoptions = true;    CookBook.list()    .success(function(data){      $scope.recipeList = data;      CookBookRecipesService.loadCookBookRecipes($scope.recipeList);    })    .error(function(error){    })   });  #controller test describe('CookBook controller spec', function(){   var $httpBackend, $rootScope, createController, authRequestHandler    beforeEach(module('cook_book_ctrl')); })  #bower.json {   "name": "HelloIonic",   "private": "true",   "devDependencies": {     "ionic": "driftyco/ionic-bower#1.0.0",     "ionic-service-analytics": "master",     "ionic-service-core": "~0.1.4",     "angular-mocks": "1.3.13"   },   "dependencies": {     "ng-cordova-oauth": "~0.1.2",     "ng-tags-input": "~2.3.0",     "angular": "~1.4.0",     "underscore": "~1.8.3",     "materialize": "~0.97.0"   },   "resolutions": {     "angular": "~1.4.0"   } }      beforeEach(module('cook_book_ctrl')); }) 

UPDATE: Screenshot added for clarity

enter image description here

like image 301
sameera207 Avatar asked Aug 05 '15 08:08

sameera207


1 Answers

Besides installing angular-mocks through bower, remember to add reference to angular-mocks.js in your karma config file, like below

config.set({      basePath: '../',     port: '8000',      files: [       'bower_components/angular/angular.js',       'bower_components/angular-mocks/angular-mocks.js',       ...     ] 
like image 116
Rebornix Avatar answered Oct 07 '22 17:10

Rebornix