resig.js
Version:
Universal reactive signal library with complete platform features: signals, animations, CRDTs, scheduling, DOM integration. Works identically across React, SolidJS, Svelte, Vue, and Qwik.
147 lines • 11.3 kB
JavaScript
/**
* Jest test setup - mocks for browser APIs in Node.js environment
*/
var _a;
// Simple mocks to avoid TypeScript errors
const mockFunction = () => { };
const mockAsyncFunction = async () => ({});
// Mock WebRTC APIs
global.RTCPeerConnection = class {
constructor() {
this.connectionState = 'new';
this.onicecandidate = null;
this.onconnectionstatechange = null;
this.ondatachannel = null;
this.createOffer = mockAsyncFunction;
this.createAnswer = mockAsyncFunction;
this.setLocalDescription = mockAsyncFunction;
this.setRemoteDescription = mockAsyncFunction;
this.addIceCandidate = mockAsyncFunction;
this.close = mockFunction;
}
createDataChannel() {
return {
readyState: 'open',
onopen: null,
onclose: null,
onmessage: null,
onerror: null,
send: mockFunction,
close: mockFunction
};
}
};
global.RTCIceCandidate = class {
constructor(candidateInit) {
this.candidateInit = candidateInit;
}
toJSON() { return this.candidateInit; }
};
global.BroadcastChannel = class {
constructor(name) {
this.name = name;
this.onmessage = null;
this.postMessage = mockFunction;
this.close = mockFunction;
}
};
// Mock IndexedDB
global.indexedDB = {
open() {
const request = {
result: {
createObjectStore: () => ({
add: () => ({ onsuccess: null, onerror: null }),
put: () => ({ onsuccess: null, onerror: null }),
get: () => ({ onsuccess: null, onerror: null }),
delete: () => ({ onsuccess: null, onerror: null }),
clear: () => ({ onsuccess: null, onerror: null }),
createIndex: () => ({ get: () => ({ onsuccess: null, onerror: null }) })
}),
transaction: () => ({
objectStore: () => ({
add: () => ({ onsuccess: null, onerror: null }),
put: () => ({ onsuccess: null, onerror: null }),
get: () => ({ onsuccess: null, onerror: null }),
delete: () => ({ onsuccess: null, onerror: null })
})
}),
close: mockFunction
},
onsuccess: null,
onerror: null,
onupgradeneeded: null
};
setTimeout(() => {
if (request.onupgradeneeded) {
request.onupgradeneeded({ target: request, oldVersion: 0, newVersion: 1 });
}
if (request.onsuccess) {
request.onsuccess({ target: request });
}
}, 0);
return request;
},
deleteDatabase: () => ({ onsuccess: null, onerror: null })
};
// Mock storage APIs
global.localStorage = {
store: {},
getItem(key) { return this.store[key] || null; },
setItem(key, value) { this.store[key] = value; },
removeItem(key) { delete this.store[key]; },
clear() { this.store = {}; }
};
global.sessionStorage = {
store: {},
getItem(key) { return this.store[key] || null; },
setItem(key, value) { this.store[key] = value; },
removeItem(key) { delete this.store[key]; },
clear() { this.store = {}; }
};
// Mock other browser APIs
global.performance = {
now: () => Date.now(),
mark: mockFunction,
measure: mockFunction
};
global.requestAnimationFrame = (callback) => setTimeout(callback, 16);
global.cancelAnimationFrame = clearTimeout;
global.URL = (_a = class {
constructor(href) {
this.href = href;
}
},
_a.createObjectURL = () => 'blob:mock-url',
_a.revokeObjectURL = mockFunction,
_a);
// Mock fetch if not available
if (typeof global.fetch === 'undefined') {
global.fetch = async () => ({
ok: true,
status: 200,
statusText: 'OK',
json: async () => ({}),
text: async () => '',
blob: async () => new Blob(),
arrayBuffer: async () => new ArrayBuffer(0),
headers: new Map(),
url: 'mock-url'
});
}
// Suppress expected test errors in console
const originalConsoleError = console.error;
console.error = (...args) => {
const message = String(args[0]);
const suppressedMessages = [
'WebRTC data channel error',
'AI transformer error',
'Expected test error',
'Subscription error'
];
if (suppressedMessages.some(msg => message.includes(msg))) {
return; // Suppress expected test errors
}
originalConsoleError.apply(console, args);
};
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2V0dXAuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvX190ZXN0c19fL3NldHVwLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHOztBQUVILDBDQUEwQztBQUMxQyxNQUFNLFlBQVksR0FBRyxHQUFHLEVBQUUsR0FBRSxDQUFDLENBQUM7QUFDOUIsTUFBTSxpQkFBaUIsR0FBRyxLQUFLLElBQUksRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUM7QUFFM0MsbUJBQW1CO0FBQ2xCLE1BQWMsQ0FBQyxpQkFBaUIsR0FBRztJQUFBO1FBQ2xDLG9CQUFlLEdBQUcsS0FBSyxDQUFDO1FBQ3hCLG1CQUFjLEdBQUcsSUFBSSxDQUFDO1FBQ3RCLDRCQUF1QixHQUFHLElBQUksQ0FBQztRQUMvQixrQkFBYSxHQUFHLElBQUksQ0FBQztRQWFyQixnQkFBVyxHQUFHLGlCQUFpQixDQUFDO1FBQ2hDLGlCQUFZLEdBQUcsaUJBQWlCLENBQUM7UUFDakMsd0JBQW1CLEdBQUcsaUJBQWlCLENBQUM7UUFDeEMseUJBQW9CLEdBQUcsaUJBQWlCLENBQUM7UUFDekMsb0JBQWUsR0FBRyxpQkFBaUIsQ0FBQztRQUNwQyxVQUFLLEdBQUcsWUFBWSxDQUFDO0lBQ3ZCLENBQUM7SUFqQkMsaUJBQWlCO1FBQ2YsT0FBTztZQUNMLFVBQVUsRUFBRSxNQUFNO1lBQ2xCLE1BQU0sRUFBRSxJQUFJO1lBQ1osT0FBTyxFQUFFLElBQUk7WUFDYixTQUFTLEVBQUUsSUFBSTtZQUNmLE9BQU8sRUFBRSxJQUFJO1lBQ2IsSUFBSSxFQUFFLFlBQVk7WUFDbEIsS0FBSyxFQUFFLFlBQVk7U0FDcEIsQ0FBQztJQUNKLENBQUM7Q0FPRixDQUFDO0FBRUQsTUFBYyxDQUFDLGVBQWUsR0FBRztJQUNoQyxZQUFtQixhQUFrQjtRQUFsQixrQkFBYSxHQUFiLGFBQWEsQ0FBSztJQUFHLENBQUM7SUFDekMsTUFBTSxLQUFLLE9BQU8sSUFBSSxDQUFDLGFBQWEs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