I'm trying to write unit tests for my controllers. I've tried the following setups, none of them have worked:
Setup #1:
beforeEach module 'PostApp'
describe 'HomeCtrl', () ->
describe 'test', () ->
it 'does stuff', inject ($controller) ->
console.log $controller
$scope = {}
$scope.test = true
(expect $scope.test).toBe true
Setup #2:
beforeEach module 'PostApp'
describe 'HomeCtrl', () ->
$controller = null
beforeEach inject (_$controller_) ->
$controller = _$controller_
describe 'test', () ->
it 'does stuff', () ->
console.log $controller
$scope = {}
$scope.test = true
(expect $scope.test).toBe true
Keep in mind all I'm trying to do is log $controller
. Both setups throw this error (which is not informative at all):
Firefox 37.0.0 (Ubuntu 0.0.0) HomeCtrl test does stuff FAILED
minErr/<@/home/pv/Sites/web/ngbp-coffee/vendor/angular/angular.js:68:12
loadModules/<@/home/pv/Sites/web/ngbp-coffee/vendor/angular/angular.js:4411:15
forEach@/home/pv/Sites/web/ngbp-coffee/vendor/angular/angular.js:336:11
loadModules@/home/pv/Sites/web/ngbp-coffee/vendor/angular/angular.js:4372:5
createInjector@/home/pv/Sites/web/ngbp-coffee/vendor/angular/angular.js:4297:11
workFn@/home/pv/Sites/web/ngbp-coffee/vendor/angular-mocks/angul
Its worth noting that module 'PostApp'
returns an undefined object. However, that is the name of my application and the file is being loaded before the test. What am I doing wrong??