// Copyright (c) 2015-present Mattermost, Inc. All Rights Reserved. // See LICENSE.txt for license information. import React from 'react' import {render} from '@testing-library/react' import {act} from 'react-dom/test-utils' import {mocked} from 'jest-mock' import {ImageBlock} from '../../blocks/imageBlock' import {wrapIntl} from '../../testUtils' import octoClient from '../../octoClient' import ImageElement from './imageElement' jest.mock('../../octoClient') const mockedOcto = mocked(octoClient, true) mockedOcto.getFileAsDataUrl.mockResolvedValue({url: 'test.jpg'}) describe('components/content/ImageElement', () => { const defaultBlock: ImageBlock = { id: 'test-id', boardId: '1', parentId: '', modifiedBy: 'test-user-id', schema: 0, type: 'image', title: 'test-title', fields: { fileId: 'test.jpg', }, createdBy: 'test-user-id', createAt: 0, updateAt: 0, deleteAt: 0, limited: false, } test('should match snapshot', async () => { const component = wrapIntl( , ) let imageContainer: Element | undefined await act(async () => { const {container} = render(component) imageContainer = container }) expect(imageContainer).toMatchSnapshot() }) test('archived file', async () => { mockedOcto.getFileAsDataUrl.mockResolvedValue({ archived: true, name: 'Filename', extension: '.txt', size: 165002, }) const component = wrapIntl( , ) let imageContainer: Element | undefined await act(async () => { const {container} = render(component) imageContainer = container }) expect(imageContainer).toMatchSnapshot() }) })