// Copyright (c) 2015-present Mattermost, Inc. All Rights Reserved. // See LICENSE.txt for license information. import {fireEvent, render, within} from '@testing-library/react-native'; import React, {type ComponentProps} from 'react'; import {View, Text} from 'react-native'; import {Preferences} from '@constants'; import DatabaseManager from '@database/manager'; import {renderWithEverything} from '@test/intl-test-helper'; import TestHelper from '@test/test_helper'; import Button from './index'; import type Database from '@nozbe/watermelondb/Database'; describe('components/button', () => { const serverUrl = 'https://server.com'; let database: Database; beforeAll(async () => { const server = await TestHelper.setupServerDatabase(serverUrl); database = server.database; await server.operator.handleConfigs({ configs: [{id: 'MaxMarkdownNodes', value: '1000'}], configsToDelete: [], prepareRecordsOnly: false, }); }); afterAll(async () => { await DatabaseManager.destroyServerDatabase(serverUrl); }); const getBaseProps = (): ComponentProps => ({ onPress: jest.fn(), text: 'Test Button', theme: Preferences.THEMES.denim, testID: 'test-button', }); it('should render button with text', () => { const props = getBaseProps(); const {getByText} = render(