Skip to content

Commit 42a34c7

Browse files
test(Payable)added test
1 parent ec0c0e3 commit 42a34c7

File tree

1 file changed

+44
-0
lines changed

1 file changed

+44
-0
lines changed
Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
const { expect } = require('chai');
2+
const { describe, it } = require('mocha')
3+
const sinon = require('sinon');
4+
const { Sequelize } = require('../../../database/models');
5+
const PayableServices = require('../../../services/PayableServices');
6+
const { dataReponsePayable } = require('../../mocks/mockDataTransaction');
7+
8+
describe('Testes unitários para o arquivo PayableServices/Payable.getBalance', () => {
9+
afterEach(() => {
10+
sinon.restore();
11+
})
12+
13+
it('Deve retornar os recebiveis corretamente', async () => {
14+
const query = 'paid';
15+
const email = 'test@test.com';
16+
17+
sinon.stub(Sequelize.Model, 'findOne').resolves(dataReponsePayable);
18+
19+
const result = await PayableServices.getBalance(query, email);
20+
21+
expect(result).to.be.an('object');
22+
expect(result).to.have.property('balance');
23+
});
24+
25+
it('Deve retornar um erro 400 se o status não for informado', async () => {
26+
const query = '';
27+
const email = '';
28+
29+
const result = await PayableServices.getBalance(query, email).catch(error => error.message);
30+
31+
expect(result).to.be.equal('400|Status is required');
32+
});
33+
34+
it('Deve retornar um erro 401 se o usuário não for encontrado', async () => {
35+
const query = 'paid';
36+
const email = '';
37+
38+
sinon.stub(Sequelize.Model, 'findOne').resolves(null);
39+
40+
const result = await PayableServices.getBalance(query, email).catch(error => error.message);
41+
42+
expect(result).to.be.equal('401|Unauthorized user');
43+
});
44+
});

0 commit comments

Comments
 (0)