补强分享元数据与版本一致性检查
This commit was merged in pull request #1.
This commit is contained in:
@@ -11,6 +11,27 @@ async function readProjectFile(relativePath) {
|
||||
}
|
||||
|
||||
describe('deployment configuration', () => {
|
||||
it('keeps the release version synchronized across project and deployment metadata', async () => {
|
||||
const [packageText, lockText, compose, readme, changelog] = await Promise.all([
|
||||
readProjectFile('package.json'),
|
||||
readProjectFile('package-lock.json'),
|
||||
readProjectFile('docker-compose.yml'),
|
||||
readProjectFile('README.zh-CN.md'),
|
||||
readProjectFile('CHANGELOG.md'),
|
||||
])
|
||||
const packageJson = JSON.parse(packageText)
|
||||
const packageLock = JSON.parse(lockText)
|
||||
const version = packageJson.version
|
||||
|
||||
expect(version).toMatch(/^\d+\.\d+\.\d+$/)
|
||||
expect(packageLock.version).toBe(version)
|
||||
expect(packageLock.packages[''].version).toBe(version)
|
||||
expect(compose.match(/^\s*image:\s*personal-web-tools:(\S+)$/m)?.[1]).toBe(version)
|
||||
expect(readme).toContain(`当前应用版本:\`${version}\`。`)
|
||||
expect(readme).toContain(`personal-web-tools-${version}-amd64.tar`)
|
||||
expect(changelog.match(/^## (\d+\.\d+\.\d+) - /m)?.[1]).toBe(version)
|
||||
})
|
||||
|
||||
it('keeps the default production port synchronized', async () => {
|
||||
const [dockerfile, compose, environment, script, readme] = await Promise.all([
|
||||
readProjectFile('Dockerfile'),
|
||||
|
||||
Reference in New Issue
Block a user