补齐AGC跨平台路径确定性回归
新增链接父目录与不存在叶目录的跨平台测试 将临时路径规范化纳入可靠清理边界 同步跨平台路径回归文档与踩坑记录
This commit is contained in:
@@ -435,8 +435,29 @@ async function runConfigWizardRegressionChecks() {
|
||||
const testRoot = fs.mkdtempSync(
|
||||
path.join(os.tmpdir(), 'genarrative-agc-config-check-'),
|
||||
);
|
||||
const canonicalTestRoot = fs.realpathSync.native(testRoot);
|
||||
try {
|
||||
const canonicalTestRoot = fs.realpathSync.native(testRoot);
|
||||
const realConfigAncestor = path.join(testRoot, 'real-config-ancestor');
|
||||
const linkedConfigAncestor = path.join(testRoot, 'linked-config-ancestor');
|
||||
fs.mkdirSync(realConfigAncestor);
|
||||
fs.symlinkSync(
|
||||
realConfigAncestor,
|
||||
linkedConfigAncestor,
|
||||
process.platform === 'win32' ? 'junction' : 'dir',
|
||||
);
|
||||
const missingLinkedConfigDir = path.join(
|
||||
linkedConfigAncestor,
|
||||
'missing-appdata',
|
||||
);
|
||||
assert.equal(fs.existsSync(missingLinkedConfigDir), false);
|
||||
assert.equal(
|
||||
await assertSafeGameCreatorConfigDestination(missingLinkedConfigDir),
|
||||
path.join(
|
||||
fs.realpathSync.native(realConfigAncestor),
|
||||
'missing-appdata',
|
||||
),
|
||||
);
|
||||
|
||||
const gitRoot = path.join(testRoot, 'tracked-repository');
|
||||
const trackedConfigDir = path.join(gitRoot, 'runtime-config');
|
||||
fs.mkdirSync(trackedConfigDir, { recursive: true });
|
||||
|
||||
Reference in New Issue
Block a user