mirror of
https://github.com/bigcapitalhq/bigcapital.git
synced 2026-02-18 05:40:31 +00:00
feat: Sorting manual journals and items.
This commit is contained in:
@@ -581,19 +581,7 @@ describe('routes: `/accounting`', () => {
|
||||
|
||||
describe('route: `accounting/manual-journals`', async () => {
|
||||
|
||||
it('Should retrieve manual journals resource not found.', async () => {
|
||||
const res = await request()
|
||||
.get('/api/accounting/manual-journals')
|
||||
.set('x-access-token', loginRes.body.token)
|
||||
.send();
|
||||
|
||||
expect(res.status).equal(400);
|
||||
expect(res.body.errors[0].type).equals('MANUAL_JOURNALS.RESOURCE.NOT.FOUND');
|
||||
expect(res.body.errors[0].code).equals(200);
|
||||
});
|
||||
|
||||
it('Should retrieve all manual journals with pagination meta.', async () => {
|
||||
const resource = await create('resource', { name: 'manual_journals' });
|
||||
const manualJournal1 = await create('manual_journal');
|
||||
const manualJournal2 = await create('manual_journal');
|
||||
|
||||
@@ -603,8 +591,8 @@ describe('routes: `/accounting`', () => {
|
||||
.send();
|
||||
|
||||
expect(res.status).equals(200);
|
||||
expect(res.body.manualJournals).to.be.a('array');
|
||||
expect(res.body.manualJournals.length).equals(2);
|
||||
expect(res.body.manualJournals.results).to.be.a('array');
|
||||
expect(res.body.manualJournals.results.length).equals(2);
|
||||
});
|
||||
});
|
||||
|
||||
|
||||
@@ -86,7 +86,7 @@ describe('routes: `/items`', () => {
|
||||
|
||||
expect(res.status).equals(422);
|
||||
expect(res.body.code).equals('validation_error');
|
||||
expect(res.body.errors).include.something.deep.equals({
|
||||
expect(res.body.errors).include.something.deep.equals({
|
||||
value: 'not_numeric',
|
||||
msg: 'Invalid value',
|
||||
param: 'cost_price',
|
||||
@@ -551,7 +551,6 @@ describe('routes: `/items`', () => {
|
||||
});
|
||||
|
||||
it('Should retrieve ordered items based on the given `column_sort_order` and `sort_order` query.', async () => {
|
||||
await create('resource', { name: 'items' });
|
||||
await create('item', { name: 'ahmed' });
|
||||
await create('item', { name: 'mohamed' });
|
||||
|
||||
@@ -585,12 +584,6 @@ describe('routes: `/items`', () => {
|
||||
});
|
||||
|
||||
it('Should retrieve filtered items based on custom view conditions.', async () => {
|
||||
const resource = await create('resource', { name: 'items' });
|
||||
const resourceField = await create('resource_field', {
|
||||
label_name: 'Type',
|
||||
key: 'type',
|
||||
resource_id: resource.id,
|
||||
});
|
||||
const item1 = await create('item', { type: 'service' });
|
||||
const item2 = await create('item', { type: 'service' });
|
||||
const item3 = await create('item', { type: 'inventory' });
|
||||
@@ -598,13 +591,13 @@ describe('routes: `/items`', () => {
|
||||
|
||||
const view = await create('view', {
|
||||
name: 'Items Inventory',
|
||||
resource_id: resource.id,
|
||||
resource_id: 2,
|
||||
roles_logic_expression: '1',
|
||||
});
|
||||
const viewCondition = await create('view_role', {
|
||||
view_id: view.id,
|
||||
index: 1,
|
||||
field_id: resourceField,
|
||||
field_id: 11,
|
||||
value: 'inventory',
|
||||
comparator: 'equals',
|
||||
});
|
||||
@@ -625,17 +618,6 @@ describe('routes: `/items`', () => {
|
||||
});
|
||||
|
||||
it('Should retrieve filtered items based on filtering conditions.', async () => {
|
||||
const resource = await create('resource', { name: 'items' });
|
||||
const resourceField = await create('resource_field', {
|
||||
label_name: 'Type',
|
||||
key: 'type',
|
||||
resource_id: resource.id,
|
||||
});
|
||||
const resourceNameField = await create('resource_field', {
|
||||
label_name: 'item name',
|
||||
key: 'name',
|
||||
resource_id: resource.id,
|
||||
});
|
||||
const item1 = await create('item', { type: 'service' });
|
||||
const item2 = await create('item', { type: 'service', name: 'target' });
|
||||
const item3 = await create('item', { type: 'inventory' });
|
||||
@@ -647,13 +629,13 @@ describe('routes: `/items`', () => {
|
||||
.query({
|
||||
stringified_filter_roles: JSON.stringify([
|
||||
{
|
||||
condition: '&&',
|
||||
condition: 'AND',
|
||||
field_key: 'type',
|
||||
comparator: 'equals',
|
||||
value: 'inventory',
|
||||
},
|
||||
{
|
||||
condition: '||',
|
||||
condition: 'OR',
|
||||
field_key: 'name',
|
||||
comparator: 'equals',
|
||||
value: 'target',
|
||||
|
||||
@@ -209,7 +209,7 @@ describe('routes: /item_categories/', () => {
|
||||
});
|
||||
});
|
||||
|
||||
describe('GET: `/item_categories`', () => {
|
||||
describe.only('GET: `/item_categories`', () => {
|
||||
|
||||
it('Should retrieve list of item categories.', async () => {
|
||||
const category1 = await create('item_category');
|
||||
@@ -230,6 +230,22 @@ describe('routes: /item_categories/', () => {
|
||||
|
||||
expect(res.body.categories[1].parent_category_id).to.be.a('number');
|
||||
});
|
||||
|
||||
|
||||
it('Should retrieve of related items.', async () => {
|
||||
const category1 = await create('item_category');
|
||||
const category2 = await create('item_category', { parent_category_id: category1.id });
|
||||
|
||||
await create('item', { category_id: category1.id });
|
||||
|
||||
const res = await request()
|
||||
.get('/api/item_categories')
|
||||
.set('x-access-token', loginRes.body.token)
|
||||
.send();
|
||||
|
||||
expect(res.body.categories[0].count).to.be.a('number');
|
||||
expect(res.body.categories[0].count).equals(1);
|
||||
});
|
||||
});
|
||||
|
||||
describe('GET `/items_category/{id}', () => {
|
||||
|
||||
Reference in New Issue
Block a user