diff --git a/tests/js/qrcode.test.js b/tests/js/qrcode.test.js index 7767620e..2802b070 100644 --- a/tests/js/qrcode.test.js +++ b/tests/js/qrcode.test.js @@ -1,5 +1,5 @@ import 'qrcode/qrcode-reader.js' -import { expect, test, vi} from 'vitest' +import { expect, test, vi } from 'vitest' import ZXingBrowser from 'qrcode/zxing-browser.min.js' import nacl from 'qrcode/nacl.min.js' @@ -26,7 +26,6 @@ const certificateWithoutValidity = 'B3X3PP0TH9CN2R3IYEDB$DKWEOED0%EIEC ED3.DQ34%R83:6NW6XM8ME1.$E8UCE44QIC+96M.C9%6I' + 'M6E467W5LA76L6%47G%64W5ZJCYX6J*64EC6:6J$6' - const qrcodeReaderTest = test.extend({ mock: async ({ task }, use) => { let resolveResult = undefined @@ -66,6 +65,7 @@ const qrcodeReaderTest = test.extend({ const fetchBackup = global.fetch global.fetch = vi.fn() + vi.useFakeTimers({toFake: ['Date']}) await use({ reader, scan: async (text) => { @@ -74,14 +74,12 @@ const qrcodeReaderTest = test.extend({ await resultHandled } }) - vi.useFakeTimers() + vi.useRealTimers() global.fetch = fetchBackup reader.remove() - vi.useRealTimers () - resolveResult(terminate) window.ZXingBrowser = savedZXingBrowser navigator.mediaDevices = undefined @@ -112,7 +110,7 @@ qrcodeReaderTest('qrcode reader shows valid qrcode informations', async ({mock}) const validity = popup.querySelector('.qrcode-reader--validity') - expect(validity.innerText).toMatch(/from :\s*31\/10\/2023 23:00:00\s*to :\s*01\/12\/2023 22:59:59/) + expect(validity.innerText).toMatch(/from :\s*10\/31\/2023, 11:00:00 PM\s*to :\s*12\/1\/2023, 10:59:59 PM/) const labels = popup.querySelectorAll('.qrcode-reader--data-item-label') diff --git a/tox.ini b/tox.ini index 0e96687a..c3a86f9c 100644 --- a/tox.ini +++ b/tox.ini @@ -96,4 +96,5 @@ allowlist_externals = install_command = bash setup-vitest.sh {packages} setenv = NODE_PATH={envdir}/lib/node_modules + LC_ALL=en_US.UTF-8 commands = npx vitest --run diff --git a/vitest.config.js b/vitest.config.js index 7f8f80ca..1be678c7 100644 --- a/vitest.config.js +++ b/vitest.config.js @@ -9,7 +9,10 @@ export default defineConfig({ qrcode: fileURLToPath(new URL('./passerelle/apps/qrcode/static/qrcode/js', import.meta.url)), vitest: process.env.NODE_PATH + '/vitest' }, - environment: 'happy-dom' + environment: 'happy-dom', + chaiConfig: { + truncateThreshold: Infinity, + }, } })