How to add jquery to jasmine/angularjs unittests

silent_coder picture silent_coder · Sep 29, 2013 · Viewed 13.6k times · Source

I have a project which is builded on plain angular.js code. We creates unittest with jasmine. But now we need to grab some 3rd party components (some directives from Angular-Bootstrap), which is also pure angular.js inside, but for testing that components some jQuery code and methods calls used. And now a lot of 3rd party tests failed with exception like [object] had no method 'trigger' and stuff like that

So my question is how to include jquery to my tests, to make 3rd party unitests valid. I run tests with Karma.

Answer

Alexander Puchkov picture Alexander Puchkov · Sep 29, 2013

Just include jquery.js to Karma's config in files array as the first item.

module.exports = function(config) {
  config.set({

    // list of files / patterns to load in the browser
    files: [
      'path/to/jquery.js',
      'path/to/angular.js'
      //..rest files      
    ],

    //rest karma options
  });
};