jasmine-angular: test service

test a Service

by ronapelbaum

HTML

<script src="https://jasmine.github.io/2.4/lib/jasmine.js"></script>
<script src="https://jasmine.github.io/2.4/lib/jasmine-html.js"></script>
<script src="https://jasmine.github.io/2.4/lib/boot.js"></script>
<link rel="stylesheet" href="https://jasmine.github.io/2.4/lib/jasmine.css">
<script src="https://code.angularjs.org/1.4.9/angular.js"></script>
<script src="https://code.angularjs.org/1.4.9/angular-mocks.js"></script>

JavaScript

//--------------BL------------
(function() {
  function MyService() {
    this.greet = function(name) {
      return 'hello ' + name;
    }
  }
  angular.module('MyModule', []).service('MyService', MyService);
})();


//--------------specs------------
describe("MyService test suite", function() {
  var MyService;
  beforeEach(angular.mock.module('MyModule'));

  beforeEach(angular.mock.inject(function(_MyService_) {
    // The injector unwraps the underscores (_) from around the parameter names when matching
    MyService = _MyService_;
  }));

  it("test greet()", function() {
    expect(MyService.greet('bob')).toBe('hello bob');
  });

});