Merge pull request #133 from beatz174-bit/codex/check-unit-test-coverage-and-suggest-additions
Fix barcode scanner tests for Vitest 4
This commit is contained in:
@@ -2,12 +2,16 @@ import { renderHook, waitFor } from '@testing-library/react';
|
|||||||
import { describe, it, beforeEach, afterEach, expect, vi, type MockInstance } from 'vitest';
|
import { describe, it, beforeEach, afterEach, expect, vi, type MockInstance } from 'vitest';
|
||||||
import { useBarcodeScanner } from '../useBarcodeScanner';
|
import { useBarcodeScanner } from '../useBarcodeScanner';
|
||||||
|
|
||||||
const decodeFromVideoDevice = vi.fn();
|
const { decodeFromVideoDevice, MockBrowserMultiFormatReader } = vi.hoisted(() => {
|
||||||
|
const decodeSpy = vi.fn();
|
||||||
|
const Reader = vi.fn(function MockBrowserMultiFormatReader(this: { decodeFromVideoDevice: typeof decodeSpy }) {
|
||||||
|
this.decodeFromVideoDevice = decodeSpy;
|
||||||
|
});
|
||||||
|
return { decodeFromVideoDevice: decodeSpy, MockBrowserMultiFormatReader: Reader };
|
||||||
|
});
|
||||||
|
|
||||||
vi.mock('@zxing/browser', () => ({
|
vi.mock('@zxing/browser', () => ({
|
||||||
BrowserMultiFormatReader: vi.fn().mockImplementation(() => ({
|
BrowserMultiFormatReader: MockBrowserMultiFormatReader,
|
||||||
decodeFromVideoDevice,
|
|
||||||
})),
|
|
||||||
}));
|
}));
|
||||||
|
|
||||||
declare global {
|
declare global {
|
||||||
|
|||||||
Reference in New Issue
Block a user