Feature: add retrieve account entries service

This commit is contained in:
2015-08-18 09:19:14 +00:00
parent 0b28dd0c07
commit f0cd72c8a1
2 changed files with 44 additions and 5 deletions

View File

@@ -252,11 +252,7 @@ module.exports = {
list_entries : function(request, response) {
return check_account(request, response, function(errors, account) {
Entry.find({
account_id: account.id
})
.sort('-date')
.exec(function(errors, entries) {
list_entries(account.id, null, function(errors, entries) {
if( errors ) {
return Handler.errorHandler(errors, 500, response);
}

View File

@@ -568,5 +568,48 @@ describe('API /accounts', function() {
});
});
});
describe('* Retrieve', function() {
it('should retrieve all entries', function(done) {
request(globalServer)
.get('/api/accounts/' + account_id + '/entries')
.set('Authorization', 'JWT ' + token)
.expect('Content-Type', /json/)
.expect(200)
.end(function(errors, result) {
should.not.exist(errors);
var entries = result.body.entries;
should.exist(entries);
entries.should.be.instanceof(Array);
var balance = result.body.balance;
should.exist(balance);
balance.should.be.instanceof(Number);
done();
});
});
it('should fail to retrieve entries for unknown account', function(done) {
request(globalServer)
.get('/api/accounts/' + token + '/entries')
.set('Authorization', 'JWT ' + token)
.expect(404, done);
});
it('should fail to retrieve entries for invalid account', function(done) {
request(globalServer)
.get('/api/accounts/1/entries')
.set('Authorization', 'JWT ' + token)
.expect(404, done);
});
it('should fail to retrieve entries for the not owned given account', function(done) {
request(globalServer)
.get('/api/accounts/' + account_id + '/entries')
.set('Authorization', 'JWT ' + hacker_token)
.expect(401, done);
});
});
});
});