UNPKG

@xrengine/server-core

Version:

Shared components for XREngine server

69 lines (56 loc) 2.36 kB
import assert from 'assert' import _ from 'lodash' import config from '@xrengine/common/src/config' import { createDefaultStorageProvider, getStorageProvider } from '../../media/storageprovider/storageprovider' import { cleanSceneDataCacheURLs, parseSceneDataCacheURLs, sceneCorsPathIdentifier, sceneRelativePathIdentifier } from './scene-parser' describe('Scene Helper Functions', () => { describe('should replace cache domain', () => { const storageProvider = createDefaultStorageProvider() const mockValue = `abcdef2144536` const mockValue2 = `08723ikjbolicujhc0asc` const savedMockData = { value: `${sceneRelativePathIdentifier}/${mockValue}`, property: { nestedValue: `${sceneRelativePathIdentifier}/${mockValue2}` } } const parsedMockData = { value: `https://${storageProvider.cacheDomain}/projects/${mockValue}`, property: { nestedValue: `https://${storageProvider.cacheDomain}/projects/${mockValue2}` } } it('should parse saved data', async function () { const parsedData = parseSceneDataCacheURLs(_.cloneDeep(savedMockData) as any, storageProvider.cacheDomain) assert.deepStrictEqual(parsedMockData, parsedData) }) it('should unparse parsed data', async function () { const unparsedData = cleanSceneDataCacheURLs(_.cloneDeep(parsedMockData) as any, storageProvider.cacheDomain) assert.deepStrictEqual(savedMockData, unparsedData) }) }) describe('should replace cors proxy', () => { const mockDomain = `https://mydomain.com/something` const savedMockData = { value: `${sceneCorsPathIdentifier}/${mockDomain}` } const parsedMockData = { value: `${config.client.cors.proxyUrl}/${mockDomain}` } it('should parse saved data', async function () { const storageProvider = getStorageProvider() const parsedData = parseSceneDataCacheURLs(_.cloneDeep(savedMockData) as any, storageProvider.cacheDomain) assert.deepStrictEqual(parsedMockData, parsedData) }) it('should unparse parsed data', async function () { const storageProvider = getStorageProvider() const unparsedData = cleanSceneDataCacheURLs(_.cloneDeep(parsedMockData) as any, storageProvider.cacheDomain) assert.deepStrictEqual(savedMockData, unparsedData) }) }) })