mirror of
https://github.com/nimbold/Firelink.git
synced 2026-09-10 17:55:43 +00:00
d49c7bd292
- make media credential recovery durable and explicit across lifecycle entry points - protect exact output replacement with platform-aware ownership, fingerprints, locks, and crash-safe quarantine - permanently remove unfinished assets while preserving safe completed and Torrent cleanup - add frontend, native, and localization regressions
27 lines
1004 B
TypeScript
27 lines
1004 B
TypeScript
import { describe, expect, it } from 'vitest';
|
|
import {
|
|
canReplaceAllDuplicateConflicts,
|
|
duplicateConflictCanReplace,
|
|
} from './DuplicateResolutionModal';
|
|
|
|
describe('duplicate replacement eligibility', () => {
|
|
it('exposes Replace for an eligible unmanaged regular-file conflict', () => {
|
|
expect(duplicateConflictCanReplace({ replaceAllowed: true })).toBe(true);
|
|
expect(duplicateConflictCanReplace({ replaceAllowed: false })).toBe(false);
|
|
expect(duplicateConflictCanReplace({})).toBe(false);
|
|
});
|
|
|
|
it('enables Replace all only when every conflict is eligible', () => {
|
|
expect(canReplaceAllDuplicateConflicts([{ replaceAllowed: true }])).toBe(true);
|
|
expect(canReplaceAllDuplicateConflicts([
|
|
{ replaceAllowed: true },
|
|
{ replaceAllowed: true },
|
|
])).toBe(true);
|
|
expect(canReplaceAllDuplicateConflicts([
|
|
{ replaceAllowed: true },
|
|
{ replaceAllowed: false },
|
|
])).toBe(false);
|
|
expect(canReplaceAllDuplicateConflicts([])).toBe(false);
|
|
});
|
|
});
|