2

I have an angular app that I am testing with karma unit tests and I am attempting to add karma-browserify so that I can require npm modules in my unit tests.

Once I added the browserify preprocessor to my karma.conf.js config file my tests began to break, even though I have not even tried to require any modules yet.

I get the following error:

object is not a function

If I follow the trace I see that the line causing the error is in the browserify bundled js temp file on a call to 'module'

zayquan
  • 7,544
  • 2
  • 30
  • 39

1 Answers1

8

Just saw an older post with same question so I answered it there as well:
angular mock `module` resulting in '[Object object] is not a function'

Change the call to load the app in the unit test from:

beforeEach(module("app"))

to:

beforeEach(window.angular.mock.module("app"))

This is a documented issue here which appears unlikely to be fixed:
https://github.com/xdissent/karma-browserify/issues/10 I hope this doesn't cost you a day like it did me.

Community
  • 1
  • 1
zayquan
  • 7,544
  • 2
  • 30
  • 39