Using Angular decorators for testing
As seen in the blogpost!
HTML
<script src="//cdnjs.cloudflare.com/ajax/libs/mocha/1.12.1/mocha.js"></script>
<link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/mocha/1.12.1/mocha.css">
<script src="https://code.angularjs.org/1.3.20/angular.js"></script>
<script>
mocha.setup('tdd');
</script>
<body>
<div id="mocha"></div>
</body>
<script src="https://code.angularjs.org/1.3.20/angular-mocks.js"></script>
JavaScript
angular.module('myApp', [])
.service('service', function ($http) {
this.doCall = function(){
$http.get('http://www.example.com2');
};
});
describe('service', function () {
var service, $httpBackend;
beforeEach(module('myApp'));
beforeEach(inject(function (_service_, _$httpBackend_) {
service = _service_;
$httpBackend = _$httpBackend_;
}));
afterEach(function(){
$httpBackend.verifyNoOutstandingExpectation();
$httpBackend.verifyNoOutstandingRequest();
});
it('should work', function () {
$httpBackend.whenGET('http://www.example.com').respond(200);
$httpBackend.whenGET('http://google.com').respond(200);
service.doCall();
$httpBackend.flush();
});
});
mocha.run();