diff options
| author | shrutip90 <[email protected]> | 2025-08-07 14:06:17 -0700 |
|---|---|---|
| committer | GitHub <[email protected]> | 2025-08-07 21:06:17 +0000 |
| commit | 53f8617b249c9f0443f5082a293a30504a118030 (patch) | |
| tree | 9f32509641300a465fad26d21408fa4b8c6ca842 /packages/cli/src/config/settings.test.ts | |
| parent | 3a3b1381950fb3aab09f71e0ad1662a4f77b3c43 (diff) | |
Add new folderTrust setting that the users can enable or disable (#5798)
Diffstat (limited to 'packages/cli/src/config/settings.test.ts')
| -rw-r--r-- | packages/cli/src/config/settings.test.ts | 56 |
1 files changed, 56 insertions, 0 deletions
diff --git a/packages/cli/src/config/settings.test.ts b/packages/cli/src/config/settings.test.ts index f68b13e3..353a5783 100644 --- a/packages/cli/src/config/settings.test.ts +++ b/packages/cli/src/config/settings.test.ts @@ -310,6 +310,62 @@ describe('Settings Loading and Merging', () => { }); }); + it('should ignore folderTrust from workspace settings', () => { + (mockFsExistsSync as Mock).mockReturnValue(true); + const userSettingsContent = { + folderTrust: true, + }; + const workspaceSettingsContent = { + folderTrust: false, // This should be ignored + }; + const systemSettingsContent = { + // No folderTrust here + }; + + (fs.readFileSync as Mock).mockImplementation( + (p: fs.PathOrFileDescriptor) => { + if (p === getSystemSettingsPath()) + return JSON.stringify(systemSettingsContent); + if (p === USER_SETTINGS_PATH) + return JSON.stringify(userSettingsContent); + if (p === MOCK_WORKSPACE_SETTINGS_PATH) + return JSON.stringify(workspaceSettingsContent); + return '{}'; + }, + ); + + const settings = loadSettings(MOCK_WORKSPACE_DIR); + expect(settings.merged.folderTrust).toBe(true); // User setting should be used + }); + + it('should use system folderTrust over user setting', () => { + (mockFsExistsSync as Mock).mockReturnValue(true); + const userSettingsContent = { + folderTrust: false, + }; + const workspaceSettingsContent = { + folderTrust: true, // This should be ignored + }; + const systemSettingsContent = { + folderTrust: true, + }; + + (fs.readFileSync as Mock).mockImplementation( + (p: fs.PathOrFileDescriptor) => { + if (p === getSystemSettingsPath()) + return JSON.stringify(systemSettingsContent); + if (p === USER_SETTINGS_PATH) + return JSON.stringify(userSettingsContent); + if (p === MOCK_WORKSPACE_SETTINGS_PATH) + return JSON.stringify(workspaceSettingsContent); + return '{}'; + }, + ); + + const settings = loadSettings(MOCK_WORKSPACE_DIR); + expect(settings.merged.folderTrust).toBe(true); // System setting should be used + }); + it('should handle contextFileName correctly when only in user settings', () => { (mockFsExistsSync as Mock).mockImplementation( (p: fs.PathLike) => p === USER_SETTINGS_PATH, |
