import * as path from 'path'; import { ConfigSettingsPath } from '../../src'; import { ConfigNode, ProfilesFileConfigNode } from '../../src/service'; import { configRootsDir } from '../helpers'; describe(`FileConfigNodeFileResources`, () => { const baseNameAsFileRoot = path.join(configRootsDir, 'baseNameAsFile'); const baseNameAsDirRoot = path.join(configRootsDir, 'baseNameAsDir'); const resources1ConfigRoot = path.join(configRootsDir, 'resources1'); const resources2ConfigRoot = path.join(configRootsDir, 'resources2'); const resources3ConfigRoot = path.join(configRootsDir, 'resources3'); it("Resolve resources root path to 'resources' subdir under parent directory of file-based settings root", async () => { const rootPath = baseNameAsFileRoot; const node = await ProfilesFileConfigNode.create(rootPath); expect(node.fileResources.path).toEqual(path.join(baseNameAsFileRoot, 'resources')); }); it("Resolve resources root path to 'resources' subdir under parent directory of directory-based settings root", async () => { const node = await ProfilesFileConfigNode.create(baseNameAsDirRoot); expect(node.fileResources.path).toEqual(path.join(baseNameAsDirRoot, 'resources')); }); it('Resolve a resource file in simple resources config', async () => { const node = await ProfilesFileConfigNode.create(resources1ConfigRoot); expect(node.fileResources.resolvePath('file1.txt')).toEqual( path.join(resources1ConfigRoot, 'resources', 'file1.txt') ); }); });