/
githubmr
/
facebook-react-native
Обзор
Документация
Войти
/
githubmr
/
facebook-react-native
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
main
packages/react-native/Libraries/Text/__tests__/Text-benchmark-itest.js
77 строк
2 KB
Ruslan Shestopalyuk
Remove props that set by default for Text component on JS side (#52905)
04 авг 2025, 15:29
04 авг 2025, 15:29
f047c9b
Код
Авторство
О чём код?
/** * Copyright (c) Meta Platforms, Inc. and affiliates. * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. * * @flow strict-local * @format * @fantom_flags reduceDefaultPropsInText:* */ import '@react-native/fantom/src/setUpDefaultReactNativeEnvironment'; import * as Fantom from '@react-native/fantom'; import * as React from 'react'; import {Text} from 'react-native'; let root; let testElements: React.MixedElement; Fantom.unstable_benchmark .suite('Text') .test.each( [100, 1000], n => `render ${n.toString()} text component instances with no explicit props`, () => { Fantom.runTask(() => root.render(testElements)); }, n => ({ beforeAll: () => { testElements = ( <> {[...Array(n).keys()].map(i => ( <Text /> ))} </> ); }, beforeEach: () => { root = Fantom.createRoot(); }, afterEach: () => { root.destroy(); }, }), ) .test.each( [100, 1000], n => `render ${n.toString()} text component instances`, () => { Fantom.runTask(() => root.render(testElements)); }, n => ({ beforeAll: () => { testElements = ( <> {[...Array(n).keys()].map(i => ( <Text id={String(i)} nativeID={String(i)} style={{ width: i + 1, height: i + 1, }}>{`Text instance ${i}`}</Text> ))} </> ); }, beforeEach: () => { root = Fantom.createRoot(); }, afterEach: () => { root.destroy(); }, }), );