Files
Firelink/src/components/DuplicateResolutionModal.test.ts
T
NimBold d49c7bd292 fix(downloads): harden recovery, replacement, and cleanup
- 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
2026-08-23 03:24:55 +03:30

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);
});
});