From 32dc6a05e55fb254be76460018ee873f03d17b0e Mon Sep 17 00:00:00 2001 From: AlyonaSviridenko Date: Thu, 8 Apr 2021 16:30:24 +0300 Subject: [PATCH] test --- dist/index.js | 13 ++++++++++++- src/install-pypy.ts | 24 +++++++++++++++++++++--- 2 files changed, 33 insertions(+), 4 deletions(-) diff --git a/dist/index.js b/dist/index.js index 929af416..70046715 100644 --- a/dist/index.js +++ b/dist/index.js @@ -2908,7 +2908,9 @@ function findRelease(releases, pythonVersion, pypyVersion, architecture) { semver.compare(semver.coerce(current.python_version), semver.coerce(previous.python_version))); }); const foundRelease = sortedReleases[0]; - const foundAsset = foundRelease.files.find(item => item.arch === architecture && item.platform === process.platform); + const foundAsset = utils_1.IS_WINDOWS + ? findAssetForWindows(foundRelease) + : findAssetForMacOrLinux(foundRelease, architecture, process.platform); return { foundAsset, resolvedPythonVersion: foundRelease.python_version, @@ -2940,6 +2942,15 @@ function isArchPresentForMacOrLinux(item, architecture, platform) { return item.files.some((file) => file.arch === architecture && file.platform === platform); } exports.isArchPresentForMacOrLinux = isArchPresentForMacOrLinux; +function findAssetForWindows(releases) { + return releases.files.find((item) => utils_1.WINDOWS_ARCHS.includes(item.arch) && + utils_1.WINDOWS_PLATFORMS.includes(item.platform)); +} +exports.findAssetForWindows = findAssetForWindows; +function findAssetForMacOrLinux(releases, architecture, platform) { + return releases.files.find((item) => item.arch === architecture && item.platform === platform); +} +exports.findAssetForMacOrLinux = findAssetForMacOrLinux; /***/ }), diff --git a/src/install-pypy.ts b/src/install-pypy.ts index f7f05c07..40527515 100644 --- a/src/install-pypy.ts +++ b/src/install-pypy.ts @@ -169,9 +169,9 @@ export function findRelease( }); const foundRelease = sortedReleases[0]; - const foundAsset = foundRelease.files.find( - item => item.arch === architecture && item.platform === process.platform - ); + const foundAsset = IS_WINDOWS + ? findAssetForWindows(foundRelease) + : findAssetForMacOrLinux(foundRelease, architecture, process.platform); return { foundAsset, @@ -212,3 +212,21 @@ export function isArchPresentForMacOrLinux( (file: any) => file.arch === architecture && file.platform === platform ); } + +export function findAssetForWindows(releases: any) { + return releases.files.find( + (item: any) => + WINDOWS_ARCHS.includes(item.arch) && + WINDOWS_PLATFORMS.includes(item.platform) + ); +} + +export function findAssetForMacOrLinux( + releases: any, + architecture: string, + platform: string +) { + return releases.files.find( + (item: any) => item.arch === architecture && item.platform === platform + ); +}