110 lines
2.9 KiB
JavaScript
110 lines
2.9 KiB
JavaScript
|
const app = require('vn-loopback/server/server');
|
||
|
const models = require('vn-loopback/server/server').models;
|
||
|
|
||
|
describe('AgencyTerm filter()', () => {
|
||
|
const authUserId = 9;
|
||
|
const today = Date.vnNew();
|
||
|
today.setHours(2, 0, 0, 0);
|
||
|
|
||
|
it('should return all results matching the filter', async() => {
|
||
|
const tx = await models.AgencyTerm.beginTransaction({});
|
||
|
|
||
|
try {
|
||
|
const options = {transaction: tx};
|
||
|
const filter = {};
|
||
|
const ctx = {req: {accessToken: {userId: authUserId}}};
|
||
|
|
||
|
const agencyTerms = await models.AgencyTerm.filter(ctx, filter, options);
|
||
|
const firstAgencyTerm = agencyTerms[0];
|
||
|
|
||
|
expect(firstAgencyTerm.routeFk).toEqual(1);
|
||
|
expect(agencyTerms.length).toEqual(5);
|
||
|
|
||
|
await tx.rollback();
|
||
|
} catch (e) {
|
||
|
await tx.rollback();
|
||
|
throw e;
|
||
|
}
|
||
|
});
|
||
|
|
||
|
it('should return results matching "search" searching by integer', async() => {
|
||
|
let ctx = {
|
||
|
args: {
|
||
|
search: 1,
|
||
|
}
|
||
|
};
|
||
|
|
||
|
let result = await app.models.AgencyTerm.filter(ctx);
|
||
|
|
||
|
expect(result.length).toEqual(1);
|
||
|
expect(result[0].routeFk).toEqual(1);
|
||
|
});
|
||
|
|
||
|
it('should return results matching "search" searching by string', async() => {
|
||
|
let ctx = {
|
||
|
args: {
|
||
|
search: 'Plants SL',
|
||
|
}
|
||
|
};
|
||
|
|
||
|
let result = await app.models.AgencyTerm.filter(ctx);
|
||
|
|
||
|
expect(result.length).toEqual(2);
|
||
|
});
|
||
|
|
||
|
it('should return results matching "from" and "to"', async() => {
|
||
|
const tx = await models.Buy.beginTransaction({});
|
||
|
const options = {transaction: tx};
|
||
|
|
||
|
try {
|
||
|
const from = Date.vnNew();
|
||
|
from.setHours(0, 0, 0, 0);
|
||
|
|
||
|
const to = Date.vnNew();
|
||
|
to.setHours(23, 59, 59, 999);
|
||
|
|
||
|
const ctx = {
|
||
|
args: {
|
||
|
from: from,
|
||
|
to: to
|
||
|
}
|
||
|
};
|
||
|
|
||
|
const results = await models.AgencyTerm.filter(ctx, options);
|
||
|
|
||
|
expect(results.length).toBe(5);
|
||
|
|
||
|
await tx.rollback();
|
||
|
} catch (e) {
|
||
|
await tx.rollback();
|
||
|
throw e;
|
||
|
}
|
||
|
});
|
||
|
|
||
|
it('should return results matching "agencyModeFk"', async() => {
|
||
|
let ctx = {
|
||
|
args: {
|
||
|
agencyModeFk: 1,
|
||
|
}
|
||
|
};
|
||
|
|
||
|
let result = await app.models.AgencyTerm.filter(ctx);
|
||
|
|
||
|
expect(result.length).toEqual(1);
|
||
|
expect(result[0].routeFk).toEqual(1);
|
||
|
});
|
||
|
|
||
|
it('should return results matching "agencyFk"', async() => {
|
||
|
let ctx = {
|
||
|
args: {
|
||
|
agencyFk: 2,
|
||
|
}
|
||
|
};
|
||
|
|
||
|
let result = await app.models.AgencyTerm.filter(ctx);
|
||
|
|
||
|
expect(result.length).toEqual(1);
|
||
|
expect(result[0].routeFk).toEqual(2);
|
||
|
});
|
||
|
});
|