diff --git a/__tests__/tools.test.ts b/__tests__/tools.test.ts index a3ca191b2..54c17b050 100644 --- a/__tests__/tools.test.ts +++ b/__tests__/tools.test.ts @@ -540,4 +540,22 @@ describe('Tools tests', () => { process.env['GITHUB_TOKEN'] = token; expect(await tools.addTools(tools_csv, '7.4', 'linux')).toContain(script); }); + + it.each` + tools_csv | php_version | resolved + ${'phpunit'} | ${'8.2'} | ${'/phpunit.phar'} + ${'phpunit'} | ${'8.1'} | ${'/phpunit.phar'} + ${'phpunit'} | ${'8.0'} | ${'/phpunit-9.6.8.phar'} + ${'phpunit'} | ${'7.3'} | ${'/phpunit-9.6.8.phar'} + ${'phpunit'} | ${'7.2'} | ${'/phpunit-8.5.33.phar'} + ${'phpunit'} | ${'7.1'} | ${'/phpunit-7.5.20.phar'} + ${'phpunit'} | ${'7.0'} | ${'/phpunit-6.5.14.phar'} + `( + 'checking error: $tools_csv', + async ({tools_csv, php_version, resolved}) => { + expect(await tools.addTools(tools_csv, php_version, 'linux')).toContain( + resolved + ); + } + ); }); diff --git a/dist/index.js b/dist/index.js index 1bfcd1b0c..585ea0be8 100644 --- a/dist/index.js +++ b/dist/index.js @@ -885,6 +885,17 @@ async function addPhive(data) { } exports.addPhive = addPhive; async function addPHPUnitTools(data) { + if (data['version'] == 'latest') { + if (/7\.3|8\.0/.test(data['php_version'])) { + data['version'] = '9.6.8'; + } else if (/7\.[2-3]/.test(data['php_version'])) { + data['version'] = '8.5.33'; + } else if (/7\.[1-3]/.test(data['php_version'])) { + data['version'] = '7.5.20'; + } else if (/7\.[0-2]/.test(data['php_version'])) { + data['version'] = '6.5.14'; + } + } data['url'] = await getPharUrl(data); return await addArchive(data); } diff --git a/src/tools.ts b/src/tools.ts index e8024f820..50972754f 100644 --- a/src/tools.ts +++ b/src/tools.ts @@ -392,6 +392,17 @@ export async function addPhive(data: RS): Promise { * @param data */ export async function addPHPUnitTools(data: RS): Promise { + if (data['version'] == 'latest') { + if (/7\.3|8\.0/.test(data['php_version'])) { + data['version'] = '9.6.8'; + } else if (/7\.[2-3]/.test(data['php_version'])) { + data['version'] = '8.5.33'; + } else if (/7\.[1-3]/.test(data['php_version'])) { + data['version'] = '7.5.20'; + } else if (/7\.[0-2]/.test(data['php_version'])) { + data['version'] = '6.5.14'; + } + } data['url'] = await getPharUrl(data); return await addArchive(data); }