46 lines
1.3 KiB
JavaScript
46 lines
1.3 KiB
JavaScript
const chai = require('chai');
|
|
const accounts = require('../../lib/resources/accounts');
|
|
const common = require('../common');
|
|
|
|
chai.should();
|
|
|
|
const config = {
|
|
username: 'valid@email.com',
|
|
password: 'password',
|
|
apiURL: 'valid.realm.url/api/v1',
|
|
};
|
|
|
|
const validator = (url, options) => {
|
|
url.should.equal(`${config.apiURL}/fetch_api_key`);
|
|
options.method.should.be.equal('POST');
|
|
Object.keys(options.body.data).length.should.equal(2);
|
|
options.body.data.username.should.equal(config.username);
|
|
options.body.data.password.should.equal(config.password);
|
|
return true;
|
|
};
|
|
|
|
describe('Accounts', () => {
|
|
it('should get API key', async () => {
|
|
const output = {
|
|
result: 'success',
|
|
msg: '',
|
|
api_key: 'randomcharactersonlyq32YIpC8aMSH',
|
|
email: config.email,
|
|
};
|
|
common.stubNetwork(validator, output);
|
|
const data = await accounts(config).retrieve();
|
|
data.result.should.be.equal('success');
|
|
});
|
|
|
|
it('should return error on incorrect password', async () => {
|
|
const output = {
|
|
result: 'error',
|
|
msg: 'Your username or password is incorrect.',
|
|
reason: 'incorrect_creds',
|
|
};
|
|
common.stubNetwork(validator, output);
|
|
const data = await accounts(config).retrieve();
|
|
data.result.should.be.equal('error');
|
|
});
|
|
});
|