import * as assert from 'assert'; import * as path from 'path'; import { Stats } from '../../fs.macchiato'; import * as fs from './adapters/fs'; import Settings from './settings'; describe('Settings', () => { it('should return instance with default values', () => { const settings = new Settings(); assert.deepStrictEqual(settings.fs, fs.createFileSystemAdapter()); assert.ok(!settings.followSymbolicLinks); assert.ok(!settings.stats); assert.strictEqual(settings.pathSegmentSeparator, path.sep); assert.ok(settings.fsStatSettings); assert.ok(settings.throwErrorOnBrokenSymbolicLink); }); it('should return instance with custom values', () => { const lstatSync = (): Stats => new Stats(); const settings = new Settings({ fs: fs.createFileSystemAdapter({ lstatSync }), stats: true }); assert.deepStrictEqual(settings.fs, fs.createFileSystemAdapter({ lstatSync })); assert.ok(settings.stats); }); });