218
									
								
								__tests__/data/microsoft.json
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										218
									
								
								__tests__/data/microsoft.json
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,218 @@ | |||||||
|  | [ | ||||||
|  |     { | ||||||
|  |         "version": "17.0.7", | ||||||
|  |         "stable": true, | ||||||
|  |         "release_url": "https://aka.ms/download-jdk", | ||||||
|  |         "files": [ | ||||||
|  |           { | ||||||
|  |             "filename": "microsoft-jdk-17.0.7-macos-x64.tar.gz", | ||||||
|  |             "arch": "x64", | ||||||
|  |             "platform": "darwin", | ||||||
|  |             "download_url": "https://aka.ms/download-jdk/microsoft-jdk-17.0.7-macos-x64.tar.gz" | ||||||
|  |           }, | ||||||
|  |           { | ||||||
|  |             "filename": "microsoft-jdk-17.0.7-linux-x64.tar.gz", | ||||||
|  |             "arch": "x64", | ||||||
|  |             "platform": "linux", | ||||||
|  |             "download_url": "https://aka.ms/download-jdk/microsoft-jdk-17.0.7-linux-x64.tar.gz" | ||||||
|  |           }, | ||||||
|  |           { | ||||||
|  |             "filename": "microsoft-jdk-17.0.7-windows-x64.zip", | ||||||
|  |             "arch": "x64", | ||||||
|  |             "platform": "win32", | ||||||
|  |             "download_url": "https://aka.ms/download-jdk/microsoft-jdk-17.0.7-windows-x64.zip" | ||||||
|  |           }, | ||||||
|  |           { | ||||||
|  |             "filename": "microsoft-jdk-17.0.7-macos-aarch64.tar.gz", | ||||||
|  |             "arch": "aarch64", | ||||||
|  |             "platform": "darwin", | ||||||
|  |             "download_url": "https://aka.ms/download-jdk/microsoft-jdk-17.0.7-macos-aarch64.tar.gz" | ||||||
|  |           }, | ||||||
|  |           { | ||||||
|  |             "filename": "microsoft-jdk-17.0.7-linux-aarch64.tar.gz", | ||||||
|  |             "arch": "aarch64", | ||||||
|  |             "platform": "linux", | ||||||
|  |             "download_url": "https://aka.ms/download-jdk/microsoft-jdk-17.0.7-linux-aarch64.tar.gz" | ||||||
|  |           } | ||||||
|  |         ] | ||||||
|  |     }, | ||||||
|  |     { | ||||||
|  |         "version": "17.0.1+12.1", | ||||||
|  |         "stable": true, | ||||||
|  |         "release_url": "https://aka.ms/download-jdk", | ||||||
|  |         "files": [ | ||||||
|  |           { | ||||||
|  |             "filename": "microsoft-jdk-17.0.1.12.1-macos-x64.tar.gz", | ||||||
|  |             "arch": "x64", | ||||||
|  |             "platform": "darwin", | ||||||
|  |             "download_url": "https://aka.ms/download-jdk/microsoft-jdk-17.0.1.12.1-macos-x64.tar.gz" | ||||||
|  |           }, | ||||||
|  |           { | ||||||
|  |             "filename": "microsoft-jdk-17.0.1.12.1-linux-x64.tar.gz", | ||||||
|  |             "arch": "x64", | ||||||
|  |             "platform": "linux", | ||||||
|  |             "download_url": "https://aka.ms/download-jdk/microsoft-jdk-17.0.1.12.1-linux-x64.tar.gz" | ||||||
|  |           }, | ||||||
|  |           { | ||||||
|  |             "filename": "microsoft-jdk-17.0.1.12.1-windows-x64.zip", | ||||||
|  |             "arch": "x64", | ||||||
|  |             "platform": "win32", | ||||||
|  |             "download_url": "https://aka.ms/download-jdk/microsoft-jdk-17.0.1.12.1-windows-x64.zip" | ||||||
|  |           }, | ||||||
|  |           { | ||||||
|  |             "filename": "microsoft-jdk-17.0.1.12.1-macos-aarch64.tar.gz", | ||||||
|  |             "arch": "aarch64", | ||||||
|  |             "platform": "darwin", | ||||||
|  |             "download_url": "https://aka.ms/download-jdk/microsoft-jdk-17.0.1.12.1-macos-aarch64.tar.gz" | ||||||
|  |           }, | ||||||
|  |           { | ||||||
|  |             "filename": "microsoft-jdk-17.0.1.12.1-linux-aarch64.tar.gz", | ||||||
|  |             "arch": "aarch64", | ||||||
|  |             "platform": "linux", | ||||||
|  |             "download_url": "https://aka.ms/download-jdk/microsoft-jdk-17.0.1.12.1-linux-aarch64.tar.gz" | ||||||
|  |           } | ||||||
|  |         ] | ||||||
|  |     }, | ||||||
|  |     { | ||||||
|  |         "version": "16.0.2+7.1", | ||||||
|  |         "stable": true, | ||||||
|  |         "release_url": "https://aka.ms/download-jdk", | ||||||
|  |         "files": [ | ||||||
|  |           { | ||||||
|  |             "filename": "microsoft-jdk-16.0.2.7.1-macos-x64.tar.gz", | ||||||
|  |             "arch": "x64", | ||||||
|  |             "platform": "darwin", | ||||||
|  |             "download_url": "https://aka.ms/download-jdk/microsoft-jdk-16.0.2.7.1-macos-x64.tar.gz" | ||||||
|  |           }, | ||||||
|  |           { | ||||||
|  |             "filename": "microsoft-jdk-16.0.2.7.1-linux-x64.tar.gz", | ||||||
|  |             "arch": "x64", | ||||||
|  |             "platform": "linux", | ||||||
|  |             "download_url": "https://aka.ms/download-jdk/microsoft-jdk-16.0.2.7.1-linux-x64.tar.gz" | ||||||
|  |           }, | ||||||
|  |           { | ||||||
|  |             "filename": "microsoft-jdk-16.0.2.7.1-windows-x64.zip", | ||||||
|  |             "arch": "x64", | ||||||
|  |             "platform": "win32", | ||||||
|  |             "download_url": "https://aka.ms/download-jdk/microsoft-jdk-16.0.2.7.1-windows-x64.zip" | ||||||
|  |           }, | ||||||
|  |           { | ||||||
|  |             "filename": "microsoft-jdk-16.0.2.7.1-macos-aarch64.tar.gz", | ||||||
|  |             "arch": "aarch64", | ||||||
|  |             "platform": "darwin", | ||||||
|  |             "download_url": "https://aka.ms/download-jdk/microsoft-jdk-16.0.2.7.1-macos-aarch64.tar.gz" | ||||||
|  |           }, | ||||||
|  |           { | ||||||
|  |             "filename": "microsoft-jdk-16.0.2.7.1-linux-aarch64.tar.gz", | ||||||
|  |             "arch": "aarch64", | ||||||
|  |             "platform": "linux", | ||||||
|  |             "download_url": "https://aka.ms/download-jdk/microsoft-jdk-16.0.2.7.1-linux-aarch64.tar.gz" | ||||||
|  |           } | ||||||
|  |         ] | ||||||
|  |     }, | ||||||
|  |     { | ||||||
|  |         "version": "11.0.19", | ||||||
|  |         "stable": true, | ||||||
|  |         "release_url": "https://aka.ms/download-jdk", | ||||||
|  |         "files": [ | ||||||
|  |           { | ||||||
|  |             "filename": "microsoft-jdk-11.0.19-macos-x64.tar.gz", | ||||||
|  |             "arch": "x64", | ||||||
|  |             "platform": "darwin", | ||||||
|  |             "download_url": "https://aka.ms/download-jdk/microsoft-jdk-11.0.19-macos-x64.tar.gz" | ||||||
|  |           }, | ||||||
|  |           { | ||||||
|  |             "filename": "microsoft-jdk-11.0.19-linux-x64.tar.gz", | ||||||
|  |             "arch": "x64", | ||||||
|  |             "platform": "linux", | ||||||
|  |             "download_url": "https://aka.ms/download-jdk/microsoft-jdk-11.0.19-linux-x64.tar.gz" | ||||||
|  |           }, | ||||||
|  |           { | ||||||
|  |             "filename": "microsoft-jdk-11.0.19-windows-x64.zip", | ||||||
|  |             "arch": "x64", | ||||||
|  |             "platform": "win32", | ||||||
|  |             "download_url": "https://aka.ms/download-jdk/microsoft-jdk-11.0.19-windows-x64.zip" | ||||||
|  |           }, | ||||||
|  |           { | ||||||
|  |             "filename": "microsoft-jdk-11.0.19-macos-aarch64.tar.gz", | ||||||
|  |             "arch": "aarch64", | ||||||
|  |             "platform": "darwin", | ||||||
|  |             "download_url": "https://aka.ms/download-jdk/microsoft-jdk-11.0.19-macos-aarch64.tar.gz" | ||||||
|  |           }, | ||||||
|  |           { | ||||||
|  |             "filename": "microsoft-jdk-11.0.19-linux-aarch64.tar.gz", | ||||||
|  |             "arch": "aarch64", | ||||||
|  |             "platform": "linux", | ||||||
|  |             "download_url": "https://aka.ms/download-jdk/microsoft-jdk-11.0.19-linux-aarch64.tar.gz" | ||||||
|  |           } | ||||||
|  |         ] | ||||||
|  |     }, | ||||||
|  |     { | ||||||
|  |         "version": "11.0.15", | ||||||
|  |         "stable": true, | ||||||
|  |         "release_url": "https://aka.ms/download-jdk", | ||||||
|  |         "files": [ | ||||||
|  |           { | ||||||
|  |             "filename": "microsoft-jdk-11.0.15-macos-x64.tar.gz", | ||||||
|  |             "arch": "x64", | ||||||
|  |             "platform": "darwin", | ||||||
|  |             "download_url": "https://aka.ms/download-jdk/microsoft-jdk-11.0.15-macos-x64.tar.gz" | ||||||
|  |           }, | ||||||
|  |           { | ||||||
|  |             "filename": "microsoft-jdk-11.0.15-linux-x64.tar.gz", | ||||||
|  |             "arch": "x64", | ||||||
|  |             "platform": "linux", | ||||||
|  |             "download_url": "https://aka.ms/download-jdk/microsoft-jdk-11.0.15-linux-x64.tar.gz" | ||||||
|  |           }, | ||||||
|  |           { | ||||||
|  |             "filename": "microsoft-jdk-11.0.15-windows-x64.zip", | ||||||
|  |             "arch": "x64", | ||||||
|  |             "platform": "win32", | ||||||
|  |             "download_url": "https://aka.ms/download-jdk/microsoft-jdk-11.0.15-windows-x64.zip" | ||||||
|  |           }, | ||||||
|  |           { | ||||||
|  |             "filename": "microsoft-jdk-11.0.15-macos-aarch64.tar.gz", | ||||||
|  |             "arch": "aarch64", | ||||||
|  |             "platform": "darwin", | ||||||
|  |             "download_url": "https://aka.ms/download-jdk/microsoft-jdk-11.0.15-macos-aarch64.tar.gz" | ||||||
|  |           }, | ||||||
|  |           { | ||||||
|  |             "filename": "microsoft-jdk-11.0.15-linux-aarch64.tar.gz", | ||||||
|  |             "arch": "aarch64", | ||||||
|  |             "platform": "linux", | ||||||
|  |             "download_url": "https://aka.ms/download-jdk/microsoft-jdk-11.0.15-linux-aarch64.tar.gz" | ||||||
|  |           } | ||||||
|  |         ] | ||||||
|  |     }, | ||||||
|  |     { | ||||||
|  |         "version": "11.0.13+8.1", | ||||||
|  |         "stable": true, | ||||||
|  |         "release_url": "https://aka.ms/download-jdk", | ||||||
|  |         "files": [ | ||||||
|  |           { | ||||||
|  |             "filename": "microsoft-jdk-11.0.13.8.1-macos-x64.tar.gz", | ||||||
|  |             "arch": "x64", | ||||||
|  |             "platform": "darwin", | ||||||
|  |             "download_url": "https://aka.ms/download-jdk/microsoft-jdk-11.0.13.8.1-macos-x64.tar.gz" | ||||||
|  |           }, | ||||||
|  |           { | ||||||
|  |             "filename": "microsoft-jdk-11.0.13.8.1-linux-x64.tar.gz", | ||||||
|  |             "arch": "x64", | ||||||
|  |             "platform": "linux", | ||||||
|  |             "download_url": "https://aka.ms/download-jdk/microsoft-jdk-11.0.13.8.1-linux-x64.tar.gz" | ||||||
|  |           }, | ||||||
|  |           { | ||||||
|  |             "filename": "microsoft-jdk-11.0.13.8.1-windows-x64.zip", | ||||||
|  |             "arch": "x64", | ||||||
|  |             "platform": "win32", | ||||||
|  |             "download_url": "https://aka.ms/download-jdk/microsoft-jdk-11.0.13.8.1-windows-x64.zip" | ||||||
|  |           }, | ||||||
|  |           { | ||||||
|  |             "filename": "microsoft-jdk-11.0.13.8.1-linux-aarch64.tar.gz", | ||||||
|  |             "arch": "aarch64", | ||||||
|  |             "platform": "linux", | ||||||
|  |             "download_url": "https://aka.ms/download-jdk/microsoft-jdk-11.0.13.8.1-linux-aarch64.tar.gz" | ||||||
|  |           } | ||||||
|  |         ] | ||||||
|  |     } | ||||||
|  | ] | ||||||
| @ -1,6 +1,6 @@ | |||||||
| import {MicrosoftDistributions} from '../../src/distributions/microsoft/installer'; | import {MicrosoftDistributions} from '../../src/distributions/microsoft/installer'; | ||||||
| import os from 'os'; | import os from 'os'; | ||||||
| import data from '../../src/distributions/microsoft/microsoft-openjdk-versions.json'; | import data from '../data/microsoft.json'; | ||||||
| import * as httpm from '@actions/http-client'; | import * as httpm from '@actions/http-client'; | ||||||
| import * as core from '@actions/core'; | import * as core from '@actions/core'; | ||||||
|  |  | ||||||
|  | |||||||
| @ -2,10 +2,12 @@ import {OracleDistribution} from '../../src/distributions/oracle/installer'; | |||||||
| import os from 'os'; | import os from 'os'; | ||||||
| import * as core from '@actions/core'; | import * as core from '@actions/core'; | ||||||
| import {getDownloadArchiveExtension} from '../../src/util'; | import {getDownloadArchiveExtension} from '../../src/util'; | ||||||
|  | import {HttpClient} from '@actions/http-client'; | ||||||
|  |  | ||||||
| describe('findPackageForDownload', () => { | describe('findPackageForDownload', () => { | ||||||
|   let distribution: OracleDistribution; |   let distribution: OracleDistribution; | ||||||
|   let spyDebug: jest.SpyInstance; |   let spyDebug: jest.SpyInstance; | ||||||
|  |   let spyHttpClient: jest.SpyInstance; | ||||||
|  |  | ||||||
|   beforeEach(() => { |   beforeEach(() => { | ||||||
|     distribution = new OracleDistribution({ |     distribution = new OracleDistribution({ | ||||||
| @ -41,7 +43,20 @@ describe('findPackageForDownload', () => { | |||||||
|       'https://download.oracle.com/java/17/archive/jdk-17.0.1_{{OS_TYPE}}-x64_bin.{{ARCHIVE_TYPE}}' |       'https://download.oracle.com/java/17/archive/jdk-17.0.1_{{OS_TYPE}}-x64_bin.{{ARCHIVE_TYPE}}' | ||||||
|     ] |     ] | ||||||
|   ])('version is %s -> %s', async (input, expectedVersion, expectedUrl) => { |   ])('version is %s -> %s', async (input, expectedVersion, expectedUrl) => { | ||||||
|  |     /* Needed only for this particular test because /latest/ urls tend to change */ | ||||||
|  |     spyHttpClient = jest.spyOn(HttpClient.prototype, 'head'); | ||||||
|  |     spyHttpClient.mockReturnValue( | ||||||
|  |       Promise.resolve({ | ||||||
|  |         message: { | ||||||
|  |           statusCode: 200 | ||||||
|  |         } | ||||||
|  |       }) | ||||||
|  |     ); | ||||||
|  |  | ||||||
|     const result = await distribution['findPackageForDownload'](input); |     const result = await distribution['findPackageForDownload'](input); | ||||||
|  |  | ||||||
|  |     jest.restoreAllMocks(); | ||||||
|  |  | ||||||
|     expect(result.version).toBe(expectedVersion); |     expect(result.version).toBe(expectedVersion); | ||||||
|     const osType = distribution.getPlatform(); |     const osType = distribution.getPlatform(); | ||||||
|     const archiveType = getDownloadArchiveExtension(); |     const archiveType = getDownloadArchiveExtension(); | ||||||
|  | |||||||
		Reference in New Issue
	
	Block a user
	 Nikolai Laevskii
					Nikolai Laevskii