From 75570ba31e79bd5b75c1268de23e34d97d72d7a5 Mon Sep 17 00:00:00 2001 From: Tianyi Cui <53024+tianyicui@users.noreply.github.com> Date: Sat, 8 Aug 2026 21:26:31 +0800 Subject: [PATCH] test(i18n): deduplicate merge conflict setup --- scripts/translation-pairing-merge.spec.ts | 25 +++++++++++------------ 1 file changed, 12 insertions(+), 13 deletions(-) diff --git a/scripts/translation-pairing-merge.spec.ts b/scripts/translation-pairing-merge.spec.ts index c6a9a5bbb7..bd6d2a632b 100644 --- a/scripts/translation-pairing-merge.spec.ts +++ b/scripts/translation-pairing-merge.spec.ts @@ -103,6 +103,16 @@ function createDivergedPair(fixture: Fixture): { ancestor: string; current: stri return { ancestor, current, other } } +function startStoppedPairingMerge(fixture: Fixture): void { + createDivergedPair(fixture) + const merge = spawnSync('git', ['-C', fixture.root, 'merge', '--no-commit', 'master'], { + encoding: 'utf8', + env: fixture.env, + }) + expect(merge.status).toBe(1) + expect(git(fixture, ['diff', '--name-only', '--diff-filter=U'])).toBe('docs/guide.i18n.yaml') +} + function expectMergedPair(fixture: Fixture): void { expect(readFileSync(join(fixture.root, 'docs/guide.md'), 'utf8')).toBe(mergedSource) expect(readFileSync(join(fixture.root, 'docs/guide.zh.md'), 'utf8')).toBe(mergedZh) @@ -223,13 +233,7 @@ describe('translation pairing merge composition', () => { it('resolves an already-stopped generated-only conflict from index stages', () => { const fixture = createFixture(false) - createDivergedPair(fixture) - const merge = spawnSync('git', ['-C', fixture.root, 'merge', '--no-commit', 'master'], { - encoding: 'utf8', - env: fixture.env, - }) - expect(merge.status).toBe(1) - expect(git(fixture, ['diff', '--name-only', '--diff-filter=U'])).toBe('docs/guide.i18n.yaml') + startStoppedPairingMerge(fixture) expect(resolveTranslationPairingConflicts(fixture.root)).toEqual(['docs/guide.i18n.yaml']) @@ -239,12 +243,7 @@ describe('translation pairing merge composition', () => { it('refuses to confirm unstaged owner bytes after a stopped merge', () => { const fixture = createFixture(false) - createDivergedPair(fixture) - const merge = spawnSync('git', ['-C', fixture.root, 'merge', '--no-commit', 'master'], { - encoding: 'utf8', - env: fixture.env, - }) - expect(merge.status).toBe(1) + startStoppedPairingMerge(fixture) write(fixture.root, 'docs/guide.md', `${mergedSource}\nunstaged\n`) expect(() => resolveTranslationPairingConflicts(fixture.root)).toThrow(