feat: Add support for .sdkmanrc as *Java Version File*

This commit is contained in:
guicamest 2025-01-25 22:02:44 +01:00
parent 0c2e604cdc
commit aa2ee0a475
4 changed files with 25 additions and 0 deletions

View file

@ -2,6 +2,7 @@ import * as cache from '@actions/cache';
import * as core from '@actions/core';
import {
convertVersionToSemver,
getVersionFromFileContent,
isVersionSatisfies,
isCacheFeatureAvailable,
isGhes
@ -82,6 +83,22 @@ describe('convertVersionToSemver', () => {
});
});
describe('getVersionFromFileContent', () => {
describe('.sdkmanrc', () => {
it.each([
['java=11.0.20.1-tem', '11.0.20'],
['java = 11.0.20.1-tem', '11.0.20'],
['java=11.0.20.1-tem # a comment in sdkmanrc', '11.0.20'],
['java=11.0.20.1-tem\n#java=21.0.20.1-tem\n', '11.0.20'], // choose first match
['java=11.0.20.1-tem\njava=21.0.20.1-tem\n', '11.0.20'], // choose first match
['#java=11.0.20.1-tem\njava=21.0.20.1-tem\n', '21.0.20'] // first one is 'commented' in .sdkmanrc
])('parsing %s should return %s', (content: string, expected: string) => {
const actual = getVersionFromFileContent(content, 'openjdk', '.sdkmanrc');
expect(actual).toBe(expected);
});
});
});
describe('isGhes', () => {
const pristineEnv = process.env;