forked from angular-fullstack/generator-angular-fullstack
-
Notifications
You must be signed in to change notification settings - Fork 3
/
Copy pathindex.spec.js
85 lines (62 loc) · 2.19 KB
/
index.spec.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
'use strict';
var proxyquire = require('proxyquire').noPreserveCache();
/* thing.controller stub */
var thingCtrl = {
index: 'thingCtrl.index'<% if(filters.mongoose) { %>,
show: 'thingCtrl.show',
create: 'thingCtrl.create',
update: 'thingCtrl.update',
destroy: 'thingCtrl.destroy'<% } %>
},
/* express.Router().router stub */
router = {
get: sinon.spy()<% if(filters.mongoose) { %>,
put: sinon.spy(),
patch: sinon.spy(),
post: sinon.spy(),
delete: sinon.spy()<% } %>
},
/* stubbed thing router */
index = proxyquire('./index.js', {
'express': {
Router: function() {
return router;
}
},
'./thing.controller': thingCtrl
});
describe('Thing API Router:', function() {
it('should return an express router instance', function() {
index.should.equal(router);
});
describe('GET /api/things', function() {
it('should route to thing.controller.index', function() {
return router.get.withArgs('/', 'thingCtrl.index').should.have.been.calledOnce;
});
});<% if(filters.mongoose) { %>
describe('GET /api/things/:id', function() {
it('should route to thing.controller.show', function() {
return router.get.withArgs('/:id', 'thingCtrl.show').should.have.been.calledOnce;
});
});
describe('POST /api/things', function() {
it('should route to thing.controller.create', function() {
return router.post.withArgs('/', 'thingCtrl.create').should.have.been.calledOnce;
});
});
describe('PUT /api/things/:id', function() {
it('should route to thing.controller.update', function() {
return router.put.withArgs('/:id', 'thingCtrl.update').should.have.been.calledOnce;
});
});
describe('PATCH /api/things/:id', function() {
it('should route to thing.controller.update', function() {
return router.patch.withArgs('/:id', 'thingCtrl.update').should.have.been.calledOnce;
});
});
describe('DELETE /api/things/:id', function() {
it('should route to thing.controller.destroy', function() {
return router.delete.withArgs('/:id', 'thingCtrl.destroy').should.have.been.calledOnce;
});
});<% } %>
});