23 lines
768 B
JavaScript
23 lines
768 B
JavaScript
const app = require('vn-loopback/server/server');
|
|
|
|
describe('loopback model Item', () => {
|
|
describe('availableId()', () => {
|
|
let nextItemId;
|
|
beforeEach(async() => {
|
|
let query = `SELECT i1.id + 1 as id FROM vn.item i1
|
|
LEFT JOIN vn.item i2 ON i1.id + 1 = i2.id
|
|
WHERE i2.id IS NULL ORDER BY i1.id LIMIT 1`;
|
|
|
|
[nextAvailableId] = await app.models.Item.rawSql(query);
|
|
nextItemId = nextAvailableId.id;
|
|
});
|
|
|
|
it('should return the next available id for an item', async() => {
|
|
let context = {isNewInstance: true, instance: {}};
|
|
let result = await app.models.Item.availableId(context);
|
|
|
|
expect(result).toEqual(nextItemId);
|
|
});
|
|
});
|
|
});
|