50 lines
997 B
JavaScript
50 lines
997 B
JavaScript
/**
|
|
* Jest setup file
|
|
* This file runs before any tests are executed
|
|
*/
|
|
|
|
// Add any global setup here
|
|
// For example: mocking global objects, setting up test environment, etc.
|
|
|
|
// Example: Mock localStorage
|
|
const localStorageMock = (() => {
|
|
let store = {};
|
|
return {
|
|
getItem: (key) => store[key] || null,
|
|
setItem: (key, value) => {
|
|
store[key] = value.toString();
|
|
},
|
|
removeItem: (key) => {
|
|
delete store[key];
|
|
},
|
|
clear: () => {
|
|
store = {};
|
|
},
|
|
};
|
|
})();
|
|
|
|
Object.defineProperty(window, 'localStorage', {
|
|
value: localStorageMock,
|
|
});
|
|
|
|
// Example: Mock sessionStorage
|
|
const sessionStorageMock = (() => {
|
|
let store = {};
|
|
return {
|
|
getItem: (key) => store[key] || null,
|
|
setItem: (key, value) => {
|
|
store[key] = value.toString();
|
|
},
|
|
removeItem: (key) => {
|
|
delete store[key];
|
|
},
|
|
clear: () => {
|
|
store = {};
|
|
},
|
|
};
|
|
})();
|
|
|
|
Object.defineProperty(window, 'sessionStorage', {
|
|
value: sessionStorageMock,
|
|
});
|