import { DEFAULT_CHUNK_SIZE } from '../upload' import { normalizeUploadConfig } from './config' import { region, regionUphostMap } from '../config/region' describe('test config ', () => { test('normalizeUploadConfig', () => { const config1 = normalizeUploadConfig() expect(config1).toStrictEqual({ uphost: [], retryCount: 3, checkByMD5: false, checkByServer: true, forceDirect: false, useCdnDomain: true, concurrentRequestLimit: 3, chunkSize: DEFAULT_CHUNK_SIZE, upprotocol: 'https', debugLogLevel: 'OFF', disableStatisticsReport: false }) const config2 = normalizeUploadConfig({ upprotocol: 'https:' }) expect(config2).toStrictEqual({ uphost: [], retryCount: 3, checkByMD5: false, checkByServer: true, forceDirect: false, useCdnDomain: true, concurrentRequestLimit: 3, chunkSize: DEFAULT_CHUNK_SIZE, upprotocol: 'https', debugLogLevel: 'OFF', disableStatisticsReport: false }) const config3 = normalizeUploadConfig({ region: region.z0 }) expect(config3).toStrictEqual({ region: region.z0, uphost: regionUphostMap[region.z0].cdnUphost, retryCount: 3, checkByMD5: false, checkByServer: true, forceDirect: false, useCdnDomain: true, concurrentRequestLimit: 3, chunkSize: DEFAULT_CHUNK_SIZE, upprotocol: 'https', debugLogLevel: 'OFF', disableStatisticsReport: false }) const config4 = normalizeUploadConfig({ uphost: ['test'] }) expect(config4).toStrictEqual({ uphost: ['test'], retryCount: 3, checkByMD5: false, checkByServer: true, forceDirect: false, useCdnDomain: true, concurrentRequestLimit: 3, chunkSize: DEFAULT_CHUNK_SIZE, upprotocol: 'https', debugLogLevel: 'OFF', disableStatisticsReport: false }) const config5 = normalizeUploadConfig({ uphost: ['test'], region: region.z0 }) expect(config5).toStrictEqual({ region: region.z0, uphost: ['test'], retryCount: 3, checkByMD5: false, checkByServer: true, forceDirect: false, useCdnDomain: true, concurrentRequestLimit: 3, chunkSize: DEFAULT_CHUNK_SIZE, upprotocol: 'https', debugLogLevel: 'OFF', disableStatisticsReport: false }) const config6 = normalizeUploadConfig({ useCdnDomain: false, region: region.z0 }) expect(config6).toStrictEqual({ region: region.z0, uphost: regionUphostMap[region.z0].srcUphost, retryCount: 3, checkByMD5: false, checkByServer: true, forceDirect: false, useCdnDomain: false, concurrentRequestLimit: 3, chunkSize: DEFAULT_CHUNK_SIZE, upprotocol: 'https', debugLogLevel: 'OFF', disableStatisticsReport: false }) }) })