From e95c0d6728dc1774ae94e38b5055fd4a079b5ff5 Mon Sep 17 00:00:00 2001 From: Chris Wanstrath Date: Wed, 29 Oct 2025 12:50:09 -0700 Subject: [PATCH] use bun's equal check --- src/testSetup.ts | 40 ++++------------------------------------ 1 file changed, 4 insertions(+), 36 deletions(-) diff --git a/src/testSetup.ts b/src/testSetup.ts index 3904828..f47218a 100644 --- a/src/testSetup.ts +++ b/src/testSetup.ts @@ -108,16 +108,10 @@ expect.extend({ if (expected instanceof RegExp) expected = String(expected) if (value instanceof RegExp) value = String(value) - if (isEqual(value, expected)) { - return { pass: true } - } else { - return { - message: () => - `Expected evaluation to be ${JSON.stringify(expected)}, but got ${JSON.stringify( - value - )}`, - pass: false, - } + expect(value).toEqual(expected) + return { + message: () => `Expected evaluation to be ${expected}, but got ${value}`, + pass: true, } } catch (error) { return { @@ -167,29 +161,3 @@ const trimWhitespace = (str: string): string => { }) .join('\n') } - -function isEqual(a: any, b: any): boolean { - if (a === null && b === null) return true - - switch (typeof a) { - case 'string': - case 'number': - case 'boolean': - case 'undefined': - return a === b - default: - return JSON.stringify(sortKeys(a)) === JSON.stringify(sortKeys(b)) - } -} - -function sortKeys(o: any): any { - if (Array.isArray(o)) return o.map(sortKeys) - if (o && typeof o === 'object' && o.constructor === Object) - return Object.keys(o) - .sort() - .reduce((r, k) => { - r[k] = sortKeys(o[k]) - return r - }, {} as any) - return o -}