added order_spec.ts
parent
e5655bb06a
commit
bd61cb5646
@ -0,0 +1,90 @@
|
|||||||
|
import { User, UserStore } from '../../models/user'
|
||||||
|
import { Product, ProductStore } from '../../models/product';
|
||||||
|
import { Order, OrderProduct, OrderStore } from '../../models/order'
|
||||||
|
|
||||||
|
const orderStore = new OrderStore()
|
||||||
|
const userStore = new UserStore()
|
||||||
|
const productStore = new ProductStore()
|
||||||
|
|
||||||
|
const testProduct: Product = {
|
||||||
|
id: 2,
|
||||||
|
name: '1984',
|
||||||
|
price: 5
|
||||||
|
}
|
||||||
|
|
||||||
|
const testUser: User = {
|
||||||
|
id: 2,
|
||||||
|
firstname: 'John',
|
||||||
|
lastname: 'Doe',
|
||||||
|
username: 'Jd',
|
||||||
|
password: 'password'
|
||||||
|
}
|
||||||
|
|
||||||
|
const testOrder: Order = {
|
||||||
|
id: 1,
|
||||||
|
status: "active",
|
||||||
|
user_id: 2
|
||||||
|
}
|
||||||
|
|
||||||
|
const testOrderProduct: OrderProduct = {
|
||||||
|
id: 1,
|
||||||
|
quantity: 5,
|
||||||
|
order_id: 1,
|
||||||
|
product_id: 2
|
||||||
|
}
|
||||||
|
|
||||||
|
describe("Order model", () => {
|
||||||
|
|
||||||
|
beforeAll(async () => {
|
||||||
|
await productStore.create(testProduct)
|
||||||
|
await userStore.create(testUser)
|
||||||
|
})
|
||||||
|
|
||||||
|
console.log('ORDER')
|
||||||
|
it('Should have an index method', () => {
|
||||||
|
expect(orderStore.index).toBeDefined();
|
||||||
|
});
|
||||||
|
|
||||||
|
it('Should have a read method', () => {
|
||||||
|
expect(orderStore.read).toBeDefined;
|
||||||
|
});
|
||||||
|
|
||||||
|
it('Should have a create method', () => {
|
||||||
|
expect(orderStore.create).toBeDefined;
|
||||||
|
});
|
||||||
|
|
||||||
|
it('Should have a update method', () => {
|
||||||
|
expect(orderStore.addProduct).toBeDefined;
|
||||||
|
});
|
||||||
|
|
||||||
|
it('Create method should add a new order', async () => {
|
||||||
|
const result = await orderStore.create(testOrder)
|
||||||
|
expect(result).toEqual(testOrder)
|
||||||
|
});
|
||||||
|
|
||||||
|
it('Index method should return a list of orders', async () => {
|
||||||
|
const result = await orderStore.index();
|
||||||
|
expect(result[0]).toEqual(testOrder)
|
||||||
|
})
|
||||||
|
|
||||||
|
|
||||||
|
it('Read method should return a order', async () => {
|
||||||
|
const result = await orderStore.read(2);
|
||||||
|
expect(result).toEqual(testOrder)
|
||||||
|
})
|
||||||
|
|
||||||
|
|
||||||
|
it('addProduct should add a new order_products', async () => {
|
||||||
|
const result = await orderStore.addProduct(testOrderProduct)
|
||||||
|
expect(result).toEqual(testOrderProduct)
|
||||||
|
})
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
afterAll(async () => {
|
||||||
|
await productStore.delete(1)
|
||||||
|
await userStore.delete(1)
|
||||||
|
})
|
||||||
|
|
||||||
|
|
||||||
|
});
|
Loading…
Reference in New Issue