mirror of
https://github.com/tiennm99/ccs.git
synced 2026-10-11 12:09:03 +00:00
test: restrict claudecode CCS_HOME cleanup
This commit is contained in:
1 parent
c21f589247
commit
6671423d79
1 file changed
+15
-8
@@ -145,8 +145,16 @@ function registerChildProcessMock(): void {
|
|||||||
}));
|
}));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const tempCcsHomes = new Set<string>();
|
||||||
|
|
||||||
|
function createTempCcsHome(prefix: string): string {
|
||||||
|
const tempHome = fs.mkdtempSync(path.join(os.tmpdir(), prefix));
|
||||||
|
tempCcsHomes.add(tempHome);
|
||||||
|
return tempHome;
|
||||||
|
}
|
||||||
|
|
||||||
function writeConfigWithAutoUpdatePreference(enabled: boolean): void {
|
function writeConfigWithAutoUpdatePreference(enabled: boolean): void {
|
||||||
const tempHome = fs.mkdtempSync(path.join(os.tmpdir(), 'ccs-auto-update-pref-'));
|
const tempHome = createTempCcsHome('ccs-auto-update-pref-');
|
||||||
process.env.CCS_HOME = tempHome;
|
process.env.CCS_HOME = tempHome;
|
||||||
const ccsDir = path.join(tempHome, '.ccs');
|
const ccsDir = path.join(tempHome, '.ccs');
|
||||||
fs.mkdirSync(ccsDir, { recursive: true });
|
fs.mkdirSync(ccsDir, { recursive: true });
|
||||||
@@ -158,7 +166,7 @@ preferences:
|
|||||||
}
|
}
|
||||||
|
|
||||||
function writeConfigWithWebSearchSettings(yamlBody: string): void {
|
function writeConfigWithWebSearchSettings(yamlBody: string): void {
|
||||||
const tempHome = fs.mkdtempSync(path.join(os.tmpdir(), 'ccs-websearch-env-'));
|
const tempHome = createTempCcsHome('ccs-websearch-env-');
|
||||||
process.env.CCS_HOME = tempHome;
|
process.env.CCS_HOME = tempHome;
|
||||||
const ccsDir = path.join(tempHome, '.ccs');
|
const ccsDir = path.join(tempHome, '.ccs');
|
||||||
fs.mkdirSync(ccsDir, { recursive: true });
|
fs.mkdirSync(ccsDir, { recursive: true });
|
||||||
@@ -225,10 +233,8 @@ describe('CLAUDECODE environment stripping', () => {
|
|||||||
});
|
});
|
||||||
|
|
||||||
afterEach(async () => {
|
afterEach(async () => {
|
||||||
const tempCcsHome = process.env.CCS_HOME?.startsWith(os.tmpdir())
|
const tempCcsHome = process.env.CCS_HOME;
|
||||||
? process.env.CCS_HOME
|
if (tempCcsHome && tempCcsHomes.has(tempCcsHome)) {
|
||||||
: undefined;
|
|
||||||
if (tempCcsHome) {
|
|
||||||
await stopOpenAICompatProxy();
|
await stopOpenAICompatProxy();
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -277,9 +283,10 @@ describe('CLAUDECODE environment stripping', () => {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (tempCcsHome) {
|
for (const tempHome of tempCcsHomes) {
|
||||||
fs.rmSync(tempCcsHome, { recursive: true, force: true });
|
fs.rmSync(tempHome, { recursive: true, force: true });
|
||||||
}
|
}
|
||||||
|
tempCcsHomes.clear();
|
||||||
});
|
});
|
||||||
|
|
||||||
it('stripClaudeCodeEnv removes CLAUDECODE case-insensitively', () => {
|
it('stripClaudeCodeEnv removes CLAUDECODE case-insensitively', () => {
|
||||||
|
|||||||
Reference in new issue
Block a user