All checks were successful
test/timeline-frontend/pipeline/head This commit looks good
- 实现评论系统,包括评论输入、列表展示和集成指南 - 添加反应功能组件(ReactionBar、ReactionButton、ReactionPicker) - 实现离线编辑支持,包括同步状态管理和冲突解决 - 添加主题定制功能,支持多种配色方案和主题预览 - 新增多视图布局选项(时间线、分组、砌体视图) - 实现个人资料编辑器,支持头像、简介和自定义字段编辑 - 添加统计页面,展示存储使用情况和上传趋势 - 新增相册管理功能,支持相册创建、编辑和照片管理 - 实现响应式设计和加载骨架屏组件 - 扩展国际化支持,新增孟加拉语、波斯语、印尼语、日语、葡萄牙语等语言 - 添加错误边界组件和离线指示器 - 更新配置文件、路由和依赖项 - 新增完整的文档、测试用例和集成指南
75 lines
1.8 KiB
JavaScript
75 lines
1.8 KiB
JavaScript
const localStorageMock = {
|
|
getItem: jest.fn(),
|
|
setItem: jest.fn(),
|
|
removeItem: jest.fn(),
|
|
clear: jest.fn(),
|
|
};
|
|
|
|
global.localStorage = localStorageMock;
|
|
|
|
// Add TextEncoder/TextDecoder polyfills for STOMP WebSocket
|
|
if (typeof global.TextEncoder === 'undefined') {
|
|
const { TextEncoder, TextDecoder } = require('util');
|
|
global.TextEncoder = TextEncoder;
|
|
global.TextDecoder = TextDecoder;
|
|
}
|
|
|
|
// Add IndexedDB polyfill for offline features
|
|
require('fake-indexeddb/auto');
|
|
|
|
Object.defineProperty(URL, 'createObjectURL', {
|
|
writable: true,
|
|
value: jest.fn(),
|
|
});
|
|
|
|
class Worker {
|
|
constructor(stringUrl) {
|
|
this.url = stringUrl;
|
|
this.onmessage = () => {};
|
|
}
|
|
|
|
postMessage(msg) {
|
|
this.onmessage(msg);
|
|
}
|
|
}
|
|
window.Worker = Worker;
|
|
|
|
/* eslint-disable global-require */
|
|
if (typeof window !== 'undefined') {
|
|
// ref: https://github.com/ant-design/ant-design/issues/18774
|
|
if (!window.matchMedia) {
|
|
Object.defineProperty(global.window, 'matchMedia', {
|
|
writable: true,
|
|
configurable: true,
|
|
value: jest.fn(() => ({
|
|
matches: false,
|
|
addListener: jest.fn(),
|
|
removeListener: jest.fn(),
|
|
})),
|
|
});
|
|
}
|
|
if (!window.matchMedia) {
|
|
Object.defineProperty(global.window, 'matchMedia', {
|
|
writable: true,
|
|
configurable: true,
|
|
value: jest.fn((query) => ({
|
|
matches: query.includes('max-width'),
|
|
addListener: jest.fn(),
|
|
removeListener: jest.fn(),
|
|
})),
|
|
});
|
|
}
|
|
}
|
|
const errorLog = console.error;
|
|
Object.defineProperty(global.window.console, 'error', {
|
|
writable: true,
|
|
configurable: true,
|
|
value: (...rest) => {
|
|
const logStr = rest.join('');
|
|
if (logStr.includes('Warning: An update to %s inside a test was not wrapped in act(...)')) {
|
|
return;
|
|
}
|
|
errorLog(...rest);
|
|
},
|
|
});
|