From b0cb9eaba0bb8d87922675386aaea39f566e6d14 Mon Sep 17 00:00:00 2001 From: Peter Fajdiga Date: Fri, 4 Oct 2024 13:35:16 +0200 Subject: [PATCH] tests: assert: extract helper function buildMessage --- src/tests/utils/assert.ts | 32 ++++++++++++++++++++++---------- 1 file changed, 22 insertions(+), 10 deletions(-) diff --git a/src/tests/utils/assert.ts b/src/tests/utils/assert.ts index f48a78a..a102f6c 100644 --- a/src/tests/utils/assert.ts +++ b/src/tests/utils/assert.ts @@ -23,23 +23,35 @@ function getStackTrace(skip: number) { return new Error().stack!.split("\n").slice(skip+2).join("\n"); } -function assertEqual(actual: any, expected: any, skip: number = 0) { - assert(expected == actual, `Values not equal +function buildMessage(actual: any, expected: any, header: string, message?: string) { + return `${header} Expected: ${expected} -Actual: ${actual}`, skip+1); +Actual: ${actual}` + (message === undefined ? "" : ` +Message: ${message}`); +} + +function assertEqual(actual: any, expected: any, skip: number = 0) { + assert( + expected == actual, + buildMessage(actual, expected, "Values not equal"), + skip+1 + ); } function assertArrayEqual(actual: any[], expected: any[], skip: number = 0) { - const equal = actual.length === expected.length && actual.every((item, index) => item === expected[index]); - assert(equal, `Arrays not equal -Expected: ${expected} -Actual: ${actual}`, skip+1); + assert( + actual.length === expected.length && actual.every((item, index) => item === expected[index]), + buildMessage(actual, expected, "Arrays not equal"), + skip+1 + ); } function assertRectEqual(actual: QmlRect, expected: QmlRect, skip: number = 0) { - assert(rectEquals(expected, actual), `QmlRect not equal -Expected: ${expected} -Actual: ${actual}`, skip+1); + assert( + rectEquals(expected, actual), + buildMessage(actual, expected, "QmlRect not equal"), + skip+1 + ); } function assertRect(actual: QmlRect, x: number, y: number, width: number, height: number, skip: number = 0) {