Todos los test de orders pasan

This commit is contained in:
2026-02-23 13:35:36 +01:00
parent fc319372be
commit 5c64c84e2a
5 changed files with 63 additions and 31 deletions

View File

@@ -12,14 +12,28 @@ const order1 = <CreateOrderDTO>{
payload: { iccid: "1234", action: "activate" }
}
const order2 = <CreateOrderDTO>{
correlation_id: "fakeRMQid-5678",
exchange: "fake.ex",
routing_key: "test.order.idk",
order_type: "activate",
payload: { iccid: "5678", action: "activate" }
}
describe("Test OrderRepository", {}, () => {
describe("Test OrderRepository", {}, (ctx) => {
const orderRepo = new OrderRepository(postgresClient)
let testId: number | undefined = undefined;
let testIds: number[] = []
before(async () => {
const result = await orderRepo.createOrder(order1)
testId = result.data.id
// Order1
const result1 = await orderRepo.createOrder(order1)
assert(result1.data != undefined)
testIds.push(result1.data.id)
// Order2 -> Para el test de crearOrder
// const result2 = await orderRepo.createOrder(order2)
// assert(result2.data != undefined)
// testIds.push(result2.data.id)
})
it("Insert new Order", async () => {
@@ -39,12 +53,13 @@ describe("Test OrderRepository", {}, () => {
})
it("Find by valid id should return the order", async () => {
const result = await orderRepo.getOrderById({ id: testId! })
const result = await orderRepo.getOrderById({ id: testIds[0]! })
assert(result.error == undefined)
assert(result.data != undefined)
const order = result.data
assert(order.id == testId)
assert(order.id == testIds[0])
assert(order.correlation_id == order1.correlation_id)
})
it("Find by correlation id should return a valid order", async () => {
@@ -66,6 +81,9 @@ describe("Test OrderRepository", {}, () => {
const resA = await orderRepo.createOrder(orderA)
const resB = await orderRepo.createOrder(orderB)
assert(resA.data != undefined)
assert(resB.data != undefined)
const idA = resA.data.id
const idB = resB.data.id
@@ -74,14 +92,14 @@ describe("Test OrderRepository", {}, () => {
assert(result.error == undefined)
assert(Array.isArray(result.data))
// The list should contain at least our 3 orders (testId, idA, idB)
const ids = result.data.map(o => o.id)
assert(ids.includes(testId!))
assert(ids.includes(testIds[0]!))
assert(ids.includes(idA))
assert(ids.includes(idB))
// Verify ordering (ASC by start_date, which maps to ID order in this sequential test)
const indexTest = result.data.findIndex(o => o.id === testId)
const indexTest = result.data.findIndex(o => o.id === testIds[0])
const indexA = result.data.findIndex(o => o.id === idA)
const indexB = result.data.findIndex(o => o.id === idB)
@@ -92,7 +110,7 @@ describe("Test OrderRepository", {}, () => {
it("Update order status should change status and add history", async () => {
const newStatus = "running"
const reason = "Test update"
const result = await orderRepo.updateOrder({ id: testId!, new_status: newStatus, reason: reason })
const result = await orderRepo.updateOrder({ id: testIds[0]!, new_status: newStatus, reason: reason })
assert(result.error == undefined)
assert(result.data != undefined)
@@ -100,7 +118,7 @@ describe("Test OrderRepository", {}, () => {
})
it("Finish order should set status to finished and set finish_date", async () => {
const result = await orderRepo.finishOrder({ id: testId!, reason: "Test finish" })
const result = await orderRepo.finishOrder({ id: testIds[0]!, reason: "Test finish" })
assert(result.error == undefined)
assert(result.data != undefined)
@@ -112,6 +130,7 @@ describe("Test OrderRepository", {}, () => {
// Create another order for this test
const order2 = { ...order1, correlation_id: "fake-error-test" }
const createResult = await orderRepo.createOrder(order2)
assert(createResult.data != undefined)
const errTestId = createResult.data.id
const result = await orderRepo.errorOrder({
@@ -133,6 +152,7 @@ describe("Test OrderRepository", {}, () => {
// Create another order for this test
const order3 = { ...order1, correlation_id: "fake-dlx-test" }
const createResult = await orderRepo.createOrder(order3)
assert(createResult.data != undefined)
const dlxTestId = createResult.data.id
const result = await orderRepo.errorOrder({