Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
镜像
Coder
code-server
提交
027106a5
C
code-server
项目概览
镜像
/
Coder
/
code-server
2022-09-21 03:15:05同步失败
通知
15
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
C
code-server
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
未验证
提交
027106a5
编写于
5月 04, 2021
作者:
J
Joe Previte
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
feat(testing): add test for constants "version" and commit
上级
af5a1c98
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
88 addition
and
12 deletion
+88
-12
test/unit/constants.test.ts
test/unit/constants.test.ts
+88
-12
未找到文件。
test/unit/constants.test.ts
浏览文件 @
027106a5
import
*
as
fs
from
"
fs
"
import
{
commit
,
getPackageJson
,
version
}
from
"
../../src/node/constants
"
import
{
tmpdir
}
from
"
../../test/utils/constants
"
import
{
loggerModule
}
from
"
../utils/helpers
"
...
...
@@ -8,12 +7,14 @@ jest.mock("@coder/logger", () => require("../utils/helpers").loggerModule)
describe
(
"
constants
"
,
()
=>
{
describe
(
"
getPackageJson
"
,
()
=>
{
const
{
getPackageJson
}
=
require
(
"
../../src/node/constants
"
)
afterEach
(()
=>
{
jest
.
clearAllMocks
()
})
afterAll
(()
=>
{
jest
.
restoreAllMocks
()
jest
.
resetModules
()
})
it
(
"
should log a warning if package.json not found
"
,
()
=>
{
...
...
@@ -36,20 +37,95 @@ describe("constants", () => {
})
})
describe
(
"
version
"
,
()
=>
{
it
(
"
should return the package.json version
"
,
()
=>
{
// Source: https://gist.github.com/jhorsman/62eeea161a13b80e39f5249281e17c39#gistcomment-2896416
const
validSemVar
=
new
RegExp
(
"
^(0|[1-9]d*).(0|[1-9]d*).(0|[1-9]d*)
"
)
const
isValidSemVar
=
validSemVar
.
test
(
version
)
expect
(
version
).
not
.
toBe
(
null
)
expect
(
isValidSemVar
).
toBe
(
true
)
describe
(
"
with package.json.version defined
"
,
()
=>
{
let
mockPackageJson
=
{
name
:
"
mock-code-server
"
,
version
:
"
1.0.0
"
,
}
let
version
=
""
beforeEach
(()
=>
{
jest
.
mock
(
"
../../package.json
"
,
()
=>
mockPackageJson
,
{
virtual
:
true
})
version
=
require
(
"
../../src/node/constants
"
).
version
})
afterEach
(()
=>
{
jest
.
resetAllMocks
()
jest
.
resetModules
()
})
it
(
"
should return the package.json version
"
,
()
=>
{
// Source: https://gist.github.com/jhorsman/62eeea161a13b80e39f5249281e17c39#gistcomment-2896416
const
validSemVar
=
new
RegExp
(
"
^(0|[1-9]d*).(0|[1-9]d*).(0|[1-9]d*)
"
)
const
isValidSemVar
=
validSemVar
.
test
(
version
)
expect
(
version
).
not
.
toBe
(
null
)
expect
(
isValidSemVar
).
toBe
(
true
)
expect
(
version
).
toBe
(
"
1.0.0
"
)
})
})
})
describe
(
"
with package.json.version missing
"
,
()
=>
{
let
mockPackageJson
=
{
name
:
"
mock-code-server
"
,
}
let
version
=
""
beforeEach
(()
=>
{
jest
.
mock
(
"
../../package.json
"
,
()
=>
mockPackageJson
,
{
virtual
:
true
})
version
=
require
(
"
../../src/node/constants
"
).
version
})
afterEach
(()
=>
{
jest
.
resetAllMocks
()
jest
.
resetModules
()
})
it
(
"
should return 'development'
"
,
()
=>
{
expect
(
version
).
toBe
(
"
development
"
)
})
})
})
describe
(
"
commit
"
,
()
=>
{
it
(
"
should return 'development' if commit is undefined
"
,
()
=>
{
// In development, the commit is not stored in our package.json
// But when we build code-server and release it, it is
expect
(
commit
).
toBe
(
"
development
"
)
describe
(
"
with package.json.commit defined
"
,
()
=>
{
let
mockPackageJson
=
{
name
:
"
mock-code-server
"
,
commit
:
"
f6b2be2838f4afb217c2fd8f03eafedd8d55ef9b
"
,
}
let
commit
=
""
beforeEach
(()
=>
{
jest
.
mock
(
"
../../package.json
"
,
()
=>
mockPackageJson
,
{
virtual
:
true
})
commit
=
require
(
"
../../src/node/constants
"
).
commit
})
afterEach
(()
=>
{
jest
.
resetAllMocks
()
jest
.
resetModules
()
})
it
(
"
should return the package.json.commit
"
,
()
=>
{
// Source: https://gist.github.com/jhorsman/62eeea161a13b80e39f5249281e17c39#gistcomment-2896416
expect
(
commit
).
toBe
(
"
f6b2be2838f4afb217c2fd8f03eafedd8d55ef9b
"
)
})
})
describe
(
"
with package.json.commit missing
"
,
()
=>
{
let
mockPackageJson
=
{
name
:
"
mock-code-server
"
,
}
let
commit
=
""
beforeEach
(()
=>
{
jest
.
mock
(
"
../../package.json
"
,
()
=>
mockPackageJson
,
{
virtual
:
true
})
commit
=
require
(
"
../../src/node/constants
"
).
commit
})
afterEach
(()
=>
{
jest
.
resetAllMocks
()
jest
.
resetModules
()
})
it
(
"
should return 'development'
"
,
()
=>
{
expect
(
commit
).
toBe
(
"
development
"
)
})
})
})
})
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录