You've already forked dev-sidecar
mirror of
https://github.com/docmirror/dev-sidecar.git
synced 2025-11-26 14:10:40 +08:00
1. 系统代理中的排除列表,可配置化;可在界面中配置,也可在远程配置中配置 # 问题修复: 1. 空指针异常导致插件关闭失败的问题修复 2. 偶发的空指针异常导致代理请求失败,原因不明,暂时规避掉 # 配置调整: 1. 添加几项targets配置,优化1项配置 2. 添加几项拦截配置 3. 添加很多项系统代理排除项,并调整白名单配置 4. 优化dns配置 5. `.gitignore` 中,排除掉 `package-lock.json` # 功能优化: 1. 远程配置内容格式不正确时,不保存它 2. 部分日志优化 3. 封装 merge.js 的 doDiff 和 doMarge 两个方法,方便使用和测试,同时添加测试用例 `mergeTest.js`,删除老的 `mergeTest.mjs`;doDiff优化过,使 config.json5 的内容更准确的体现用户自定义配置 4. 打开链接的方法,全部改为异步 # 文档: 1. 移除部分 `gitee仓库` 相关的内容,因为gitee的仓库被禁了,部分gitee地址改为github地址 2. 代码贡献说明中,添加环境准备相关说明;同时添加4个bat脚本文件方便windows用户快速贡献代码
89 lines
1.4 KiB
JavaScript
89 lines
1.4 KiB
JavaScript
const lodash = require('lodash')
|
|
const mergeApi = require('../src/merge.js')
|
|
|
|
// 默认配置
|
|
const defConfig = {
|
|
a: {
|
|
aa: { value: 1 },
|
|
bb: { value: 2 }
|
|
},
|
|
b: { c: 2 },
|
|
c: 1,
|
|
d: [1, 2, 3],
|
|
e: {
|
|
aa: 2,
|
|
ee: 5
|
|
},
|
|
f: {
|
|
x: 1
|
|
},
|
|
g: [1, 2],
|
|
h: null,
|
|
i: null
|
|
}
|
|
|
|
// 自定义配置
|
|
const customConfig = {
|
|
a: {
|
|
bb: { value: 2 },
|
|
cc: { value: 3 }
|
|
},
|
|
b: { c: 2 },
|
|
c: null,
|
|
d: [1, 2, 3, 4],
|
|
e: {
|
|
aa: 2,
|
|
ee: 5,
|
|
ff: 6
|
|
},
|
|
f: {},
|
|
g: [1, 2],
|
|
h: null
|
|
}
|
|
|
|
// doDiff
|
|
const doDiffResult = mergeApi.doDiff(defConfig, customConfig)
|
|
console.log('doDiffResult:', JSON.stringify(doDiffResult, null, 2))
|
|
console.log('\r')
|
|
// 校验doDiff结果
|
|
const doDiffExpect = {
|
|
a: {
|
|
aa: null,
|
|
cc: { value: 3 }
|
|
},
|
|
c: null,
|
|
d: [1, 2, 3, 4],
|
|
e: {
|
|
ff: 6
|
|
},
|
|
f: {
|
|
x: null
|
|
}
|
|
}
|
|
console.log('check diff result:', lodash.isEqual(doDiffResult, doDiffExpect))
|
|
console.log('\r')
|
|
|
|
// doMerge
|
|
const doMergeResult = mergeApi.doMerge(defConfig, doDiffResult)
|
|
// delete null item
|
|
mergeApi.deleteNullItems(doMergeResult)
|
|
console.log('running:', JSON.stringify(doMergeResult, null, 2))
|
|
// 校验doMerge结果
|
|
const doMergeExpect = {
|
|
a: {
|
|
bb: { value: 2 },
|
|
cc: { value: 3 }
|
|
},
|
|
b: { c: 2 },
|
|
d: [1, 2, 3, 4],
|
|
e: {
|
|
aa: 2,
|
|
ee: 5,
|
|
ff: 6
|
|
},
|
|
f: {},
|
|
g: [1, 2]
|
|
}
|
|
console.log('check merge result:', lodash.isEqual(doMergeResult, doMergeExpect))
|
|
console.log('\r')
|