Skip to content

Commit d6b4422

Browse files
committed
fix(deps): leverage the github workflows predicate
and convert semantic-release lifter tests to vitest for #458
1 parent ab855fb commit d6b4422

File tree

8 files changed

+49
-109
lines changed

8 files changed

+49
-109
lines changed

package-lock.json

Lines changed: 4 additions & 4 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,7 @@
6363
"dependencies": {
6464
"@form8ion/config-file": "^1.0.1",
6565
"@form8ion/core": "^4.6.1",
66-
"@form8ion/github-workflows-core": "^5.4.0",
66+
"@form8ion/github-workflows-core": "^5.5.0",
6767
"@form8ion/javascript-core": "^11.0.0",
6868
"deepmerge": "^4.2.2"
6969
},
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
export {default as scaffold} from './experimental-release-workflow/scaffolder.js';
2-
export {default as test} from './tester.js';
2+
export {test} from '@form8ion/github-workflows-core';
33
export {default as lift} from './lifter.js';

src/semantic-release/ci-providers/github-workflows/tester-test.js

Lines changed: 0 additions & 31 deletions
This file was deleted.

src/semantic-release/ci-providers/github-workflows/tester.js

Lines changed: 0 additions & 5 deletions
This file was deleted.

src/semantic-release/lifter-test.js

Lines changed: 0 additions & 66 deletions
This file was deleted.

src/semantic-release/lifter.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import {promises as fs} from 'fs';
1+
import {promises as fs} from 'node:fs';
22

33
import {test as ciProviderCanBeLifted, lift as liftCiProvider} from './ci-providers/index.js';
44

src/semantic-release/lifter.test.js

Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
import {promises as fs} from 'node:fs';
2+
3+
import any from '@travi/any';
4+
import {expect, it, describe, vi} from 'vitest';
5+
import {when} from 'jest-when';
6+
7+
import {test as workflowsAreUsed, lift as liftGithubWorkflows} from './ci-providers/index.js';
8+
import lift from './lifter.js';
9+
10+
vi.mock('node:fs');
11+
vi.mock('./ci-providers/index.js');
12+
13+
describe('semantic-release lifter', () => {
14+
const projectRoot = any.string();
15+
16+
it('should define the badge', async () => {
17+
when(workflowsAreUsed).calledWith({projectRoot}).mockResolvedValue(false);
18+
19+
expect(await lift({projectRoot})).toEqual({
20+
badges: {
21+
contribution: {
22+
'semantic-release': {
23+
img: 'https://img.shields.io/badge/semantic--release-angular-e10079?logo=semantic-release',
24+
text: 'semantic-release: angular',
25+
link: 'https://github.com/semantic-release/semantic-release'
26+
}
27+
}
28+
}
29+
});
30+
expect(liftGithubWorkflows).not.toHaveBeenCalled();
31+
});
32+
33+
it('should lift the ci provider when supported', async () => {
34+
const nodeVersion = `${any.integer()}`;
35+
when(fs.readFile).calledWith(`${projectRoot}/.nvmrc`, 'utf-8').mockResolvedValue(nodeVersion);
36+
when(workflowsAreUsed).calledWith({projectRoot}).mockResolvedValue(true);
37+
38+
await lift({projectRoot});
39+
40+
expect(liftGithubWorkflows).toHaveBeenCalledWith({projectRoot, nodeVersion});
41+
});
42+
});

0 commit comments

Comments
 (0)