File size: 691 Bytes
cdf7155
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
import { vi } from "vitest";

// Mock Web Serial API
const mockSerialPort = {
  readable: new ReadableStream(),
  writable: new WritableStream(),
  close: vi.fn(),
  forget: vi.fn(),
  getInfo: vi.fn(() => ({ usbVendorId: 0x1234, usbProductId: 0x5678 })),
};

const mockSerial = {
  requestPort: vi.fn(() => Promise.resolve(mockSerialPort)),
  getPorts: vi.fn(() => Promise.resolve([mockSerialPort])),
};

// Mock WebUSB API
const mockUSB = {
  requestDevice: vi.fn(),
  getDevices: vi.fn(() => Promise.resolve([])),
};

// Attach to global navigator
Object.defineProperty(globalThis, "navigator", {
  value: {
    ...globalThis.navigator,
    serial: mockSerial,
    usb: mockUSB,
  },
});