signal-desktop/ts/test-helpers/fakeAttachment.ts

44 lines
1,023 B
TypeScript

// Copyright 2021 Signal Messenger, LLC
// SPDX-License-Identifier: AGPL-3.0-only
import { v4 as generateUuid } from 'uuid';
import type {
AttachmentDraftType,
ThumbnailType,
AttachmentForUIType,
} from '../types/Attachment.js';
import { IMAGE_JPEG } from '../types/MIME.js';
export const fakeAttachment = (
overrides: Partial<AttachmentForUIType> = {}
): AttachmentForUIType => ({
contentType: IMAGE_JPEG,
width: 800,
height: 600,
size: 10304,
// This is to get rid of the download buttons on most of our stories
path: 'ab/ablahblahblah',
isPermanentlyUndownloadable: false,
...overrides,
});
export const fakeThumbnail = (url: string): ThumbnailType => ({
contentType: IMAGE_JPEG,
height: 100,
path: url,
url,
width: 100,
size: 128,
});
export const fakeDraftAttachment = (
overrides: Partial<AttachmentDraftType> = {}
): AttachmentDraftType => ({
pending: false,
clientUuid: generateUuid(),
contentType: IMAGE_JPEG,
path: 'file.jpg',
size: 10304,
...overrides,
});