Skip to content

Commit

Permalink
Separate error-checking and next/done logic from other logic in the t…
Browse files Browse the repository at this point in the history
…est suite

Signed-off-by: Supasate Choochaisri <[email protected]>
  • Loading branch information
supasate committed May 5, 2016
1 parent 6964914 commit 04e26fa
Show file tree
Hide file tree
Showing 30 changed files with 753 additions and 128 deletions.
2 changes: 2 additions & 0 deletions test/access-control.integration.js
Original file line number Diff line number Diff line change
Expand Up @@ -127,6 +127,7 @@ describe('access control - integration', function() {
var userCounter;
function newUserData() {
userCounter = userCounter ? ++userCounter : 1;

return {
email: 'new-' + userCounter + '@test.test',
password: 'test',
Expand Down Expand Up @@ -204,6 +205,7 @@ describe('access control - integration', function() {
balance: 100,
}, function(err, act) {
self.url = '/api/accounts/' + act.id;

done();
});
});
Expand Down
30 changes: 30 additions & 0 deletions test/access-token.test.js
Original file line number Diff line number Diff line change
Expand Up @@ -150,6 +150,7 @@ describe('loopback.token(options)', function() {
.end(function(err, res) {
assert(!err);
assert.deepEqual(res.body, { userId: userId });

done();
});
});
Expand All @@ -165,6 +166,7 @@ describe('loopback.token(options)', function() {
.end(function(err, res) {
assert(!err);
assert.deepEqual(res.body, { userId: userId, state: 1 });

done();
});
});
Expand All @@ -180,6 +182,7 @@ describe('loopback.token(options)', function() {
.end(function(err, res) {
assert(!err);
assert.deepEqual(res.body, { userId: userId, state: 1 });

done();
});
});
Expand All @@ -188,6 +191,7 @@ describe('loopback.token(options)', function() {
var tokenStub = { id: 'stub id' };
app.use(function(req, res, next) {
req.accessToken = tokenStub;

next();
});
app.use(loopback.token({ model: Token }));
Expand All @@ -200,7 +204,9 @@ describe('loopback.token(options)', function() {
.expect(200)
.end(function(err, res) {
if (err) return done(err);

expect(res.body).to.eql(tokenStub);

done();
});
});
Expand All @@ -211,6 +217,7 @@ describe('loopback.token(options)', function() {
var tokenStub = { id: 'stub id' };
app.use(function(req, res, next) {
req.accessToken = tokenStub;

next();
});
app.use(loopback.token({ model: Token }));
Expand All @@ -223,7 +230,9 @@ describe('loopback.token(options)', function() {
.expect(200)
.end(function(err, res) {
if (err) return done(err);

expect(res.body).to.eql(tokenStub);

done();
});
});
Expand All @@ -234,6 +243,7 @@ describe('loopback.token(options)', function() {
var tokenStub = { id: 'stub id' };
app.use(function(req, res, next) {
req.accessToken = tokenStub;

next();
});
app.use(loopback.token({
Expand All @@ -249,7 +259,9 @@ describe('loopback.token(options)', function() {
.expect(200)
.end(function(err, res) {
if (err) return done(err);

expect(res.body).to.eql(tokenStub);

done();
});
});
Expand All @@ -262,6 +274,7 @@ describe('loopback.token(options)', function() {

app.use(function(req, res, next) {
req.accessToken = tokenStub;

next();
});
app.use(loopback.token({
Expand All @@ -278,12 +291,14 @@ describe('loopback.token(options)', function() {
.expect(200)
.end(function(err, res) {
if (err) return done(err);

expect(res.body).to.eql({
id: token.id,
ttl: token.ttl,
userId: token.userId,
created: token.created.toJSON(),
});

done();
});
});
Expand All @@ -306,6 +321,7 @@ describe('AccessToken', function() {
it('should be validateable', function(done) {
this.token.validate(function(err, isValid) {
assert(isValid);

done();
});
});
Expand All @@ -321,7 +337,9 @@ describe('AccessToken', function() {

Token.findForRequest(req, function(err, token) {
if (err) return done(err);

expect(token.id).to.eql(expectedTokenId);

done();
});
});
Expand Down Expand Up @@ -355,9 +373,11 @@ describe('app.enableAuth()', function() {
if (err) {
return done(err);
}

var errorResponse = res.body.error;
assert(errorResponse);
assert.equal(errorResponse.code, 'AUTHORIZATION_REQUIRED');

done();
});
});
Expand All @@ -371,9 +391,11 @@ describe('app.enableAuth()', function() {
if (err) {
return done(err);
}

var errorResponse = res.body.error;
assert(errorResponse);
assert.equal(errorResponse.code, 'ACCESS_DENIED');

done();
});
});
Expand All @@ -387,9 +409,11 @@ describe('app.enableAuth()', function() {
if (err) {
return done(err);
}

var errorResponse = res.body.error;
assert(errorResponse);
assert.equal(errorResponse.code, 'MODEL_NOT_FOUND');

done();
});
});
Expand All @@ -403,9 +427,11 @@ describe('app.enableAuth()', function() {
if (err) {
return done(err);
}

var errorResponse = res.body.error;
assert(errorResponse);
assert.equal(errorResponse.code, 'AUTHORIZATION_REQUIRED');

done();
});
});
Expand Down Expand Up @@ -436,7 +462,9 @@ describe('app.enableAuth()', function() {
.expect('Content-Type', /json/)
.end(function(err, res) {
if (err) return done(err);

expect(res.body.token.id).to.eql(token.id);

done();
});
});
Expand All @@ -446,7 +474,9 @@ function createTestingToken(done) {
var test = this;
Token.create({ userId: '123' }, function(err, token) {
if (err) return done(err);

test.token = token;

done();
});
}
Expand Down
3 changes: 3 additions & 0 deletions test/acl.test.js
Original file line number Diff line number Diff line change
Expand Up @@ -417,7 +417,9 @@ describe('access check', function() {
MyTestModel.beforeRemote('find', function(ctx, next) {
// ensure this is called after checkAccess
if (!checkAccessCalled) return done(new Error('incorrect order'));

beforeHookCalled = true;

next();
});

Expand All @@ -426,6 +428,7 @@ describe('access check', function() {
.end(function(err, result) {
assert(beforeHookCalled, 'the before hook should be called');
assert(checkAccessCalled, 'checkAccess should have been called');

done();
});
});
Expand Down
Loading

0 comments on commit 04e26fa

Please sign in to comment.