Skip to content

Commit 4d62faf

Browse files
authored
Add test for node-version * (actions#491)
1 parent 17f8bd9 commit 4d62faf

File tree

1 file changed

+22
-44
lines changed

1 file changed

+22
-44
lines changed

__tests__/installer.test.ts

Lines changed: 22 additions & 44 deletions
Original file line numberDiff line numberDiff line change
@@ -135,50 +135,28 @@ describe('setup-node', () => {
135135
expect(versions?.length).toBe(23);
136136
});
137137

138-
it('can find 12.16.2 from manifest on osx', async () => {
139-
os.platform = 'darwin';
140-
os.arch = 'x64';
141-
let versions: tc.IToolRelease[] | null = await tc.getManifestFromRepo(
142-
'actions',
143-
'node-versions',
144-
'mocktoken'
145-
);
146-
expect(versions).toBeDefined();
147-
let match = await tc.findFromManifest('12.16.2', true, versions);
148-
expect(match).toBeDefined();
149-
expect(match?.version).toBe('12.16.2');
150-
expect((match as any).lts).toBe('Erbium');
151-
});
152-
153-
it('can find 12 from manifest on linux', async () => {
154-
os.platform = 'linux';
155-
os.arch = 'x64';
156-
let versions: tc.IToolRelease[] | null = await tc.getManifestFromRepo(
157-
'actions',
158-
'node-versions',
159-
'mocktoken'
160-
);
161-
expect(versions).toBeDefined();
162-
let match = await tc.findFromManifest('12.16.2', true, versions);
163-
expect(match).toBeDefined();
164-
expect(match?.version).toBe('12.16.2');
165-
expect((match as any).lts).toBe('Erbium');
166-
});
167-
168-
it('can find 10 from manifest on windows', async () => {
169-
os.platform = 'win32';
170-
os.arch = 'x64';
171-
let versions: tc.IToolRelease[] | null = await tc.getManifestFromRepo(
172-
'actions',
173-
'node-versions',
174-
'mocktoken'
175-
);
176-
expect(versions).toBeDefined();
177-
let match = await tc.findFromManifest('10', true, versions);
178-
expect(match).toBeDefined();
179-
expect(match?.version).toBe('10.20.1');
180-
expect((match as any).lts).toBe('Dubnium');
181-
});
138+
it.each([
139+
['12.16.2', 'darwin', '12.16.2', 'Erbium'],
140+
['12', 'linux', '12.16.2', 'Erbium'],
141+
['10', 'win32', '10.20.1', 'Dubnium'],
142+
['*', 'linux', '14.0.0', 'Fermium']
143+
])(
144+
'can find %s from manifest on %s',
145+
async (versionSpec, platform, expectedVersion, expectedLts) => {
146+
os.platform = platform;
147+
os.arch = 'x64';
148+
let versions: tc.IToolRelease[] | null = await tc.getManifestFromRepo(
149+
'actions',
150+
'node-versions',
151+
'mocktoken'
152+
);
153+
expect(versions).toBeDefined();
154+
let match = await tc.findFromManifest(versionSpec, true, versions);
155+
expect(match).toBeDefined();
156+
expect(match?.version).toBe(expectedVersion);
157+
expect((match as any).lts).toBe(expectedLts);
158+
}
159+
);
182160

183161
//--------------------------------------------------
184162
// Found in cache tests

0 commit comments

Comments
 (0)