UNPKG

@hyext/builder-neorn

Version:

neo react-native builder for hyext

121 lines (120 loc) 3.69 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const huyaext_1 = require("./huyaext"); const DEPRECATED_AUDIENCE_SDK = 'hyext-rn-sdk'; const DEPRECATED_STREAMER_SDK = 'hyliveext-rn-sdk'; const AUDIENCE_SDK = '@hyext/hyext-rn-sdk'; const STREAMER_SDK = '@hyext/hyliveext-rn-sdk'; test('[RN58]没有安装任何sdk, 将安装 modernSDK 的58版本', () => { expect(huyaext_1.getShouldInstallSDKVersions({}, '0.58.5')).toEqual({ '@hyext/hyext-rn-sdk': '1.13.0', '@hyext/hyliveext-rn-sdk': '1.14.0', }); }); test('[RN62]没有安装任何sdk, 将安装 modernSDK 的62版本', () => { expect(huyaext_1.getShouldInstallSDKVersions({}, '0.62.2')).toEqual({ '@hyext/hyext-rn-sdk': '2.0.0', '@hyext/hyliveext-rn-sdk': '2.0.0', }); }); test('同时安装多种sdk将报错', () => { const data = [ { 'hyext-rn-sdk': '1.18.0', '@hyext/hyext-rn-sdk': '1.18.0', }, { '@hyext/hyext-rn-sdk': '1.18.0', 'hyliveext-rn-sdk': '1.18.0', }, { 'hyext-rn-sdk': '1.18.0', 'hyliveext-rn-sdk': '1.1.0', '@hyext/hyext-rn-sdk': '1.18.0', }, ]; data.forEach((dependencies) => { expect(() => huyaext_1.getShouldInstallSDKVersions(dependencies, '0.58.5')).toThrow(`请安装正确的SDK名称: ${AUDIENCE_SDK}, ${STREAMER_SDK}`); }); }); test('deprecatedSDK[RN58], >= RN58 的将自动降级', () => { const data = [ { 'hyext-rn-sdk': '1.18.0', }, { 'hyliveext-rn-sdk': '1.18.0', }, { 'hyext-rn-sdk': '1.18.0', 'hyliveext-rn-sdk': '1.1.0', }, ]; data.forEach(dependencies => { expect(huyaext_1.getShouldInstallSDKVersions(dependencies, '0.58.5')).toEqual({ 'hyext-rn-sdk': '1.9.6', 'hyliveext-rn-sdk': '1.10.0', }); }); }); test('deprecatedSDK[RN62], 只安装指定版本', () => { let data = [ { 'hyext-rn-sdk': '1.1.0', }, { 'hyext-rn-sdk': '1.1.0', 'hyliveext-rn-sdk': '1.1.0', }, { 'hyext-rn-sdk': '1.13.0', 'hyliveext-rn-sdk': '1.12.0', }, ]; data.forEach(dependencies => { expect(huyaext_1.getShouldInstallSDKVersions(dependencies, '0.62.2')).toEqual({ 'hyext-rn-sdk': '2.0.0', 'hyliveext-rn-sdk': '2.0.0', }); }); }); test('modernSDK[RN58], >= RN58 的将自动降级', () => { const data = [ { '@hyext/hyext-rn-sdk': '1.18.0', }, { '@hyext/hyliveext-rn-sdk': '1.18.0', }, { '@hyext/hyext-rn-sdk': '1.18.0', '@hyext/hyliveext-rn-sdk': '1.10.0', }, ]; data.forEach(dependencies => { expect(huyaext_1.getShouldInstallSDKVersions(dependencies, '0.58.5')).toEqual({ '@hyext/hyext-rn-sdk': '1.13.0', '@hyext/hyliveext-rn-sdk': '1.14.0', }); }); }); test('modernSDK[RN62], 只安装指定版本', () => { const data = [ { '@hyext/hyext-rn-sdk': '1.18.0', }, { '@hyext/hyliveext-rn-sdk': '1.18.0', }, { '@hyext/hyext-rn-sdk': '1.18.0', '@hyext/hyliveext-rn-sdk': '1.10.0', }, ]; data.forEach(dependencies => { expect(huyaext_1.getShouldInstallSDKVersions(dependencies, '0.62.2')).toEqual({ '@hyext/hyext-rn-sdk': '2.0.0', '@hyext/hyliveext-rn-sdk': '2.0.0', }); }); });