mirror of
https://github.com/facebook/react-native.git
synced 2025-11-01 09:14:26 +00:00
RN: Move {packages => private}/react-native-fantom (#51938)
Summary: Pull Request resolved: https://github.com/facebook/react-native/pull/51938 Moves `packages/react-native-fantom` to `private/react-native-fantom`. Changelog: [Internal] Reviewed By: huntie Differential Revision: D76368959 fbshipit-source-id: 8d62f792229c10cd108dc849e8629d3174dc72c1
This commit is contained in:
1 parent
c79e55f79d
commit
d6f29c8afd
57 files changed
+25
-30
No files matched your search
+2
-2
@@ -171,8 +171,8 @@ fix_*.patch
|
||||
.metro-health-check*
|
||||
|
||||
# Jest Integration
|
||||
/packages/react-native-fantom/build/
|
||||
/packages/react-native-fantom/tester/build/
|
||||
/private/react-native-fantom/build/
|
||||
/private/react-native-fantom/tester/build/
|
||||
|
||||
# [Experimental] Generated TS type definitions
|
||||
/packages/**/types_generated/
|
||||
+1
-1
@@ -90,7 +90,7 @@ TODO: Explain the different components of React Native at a high level.
|
||||
- Jest
|
||||
- ESLint
|
||||
- Integration / E2E
|
||||
- [Fantom](../packages/react-native-fantom/__docs__/README.md)
|
||||
- [Fantom](../private/react-native-fantom/__docs__/README.md)
|
||||
- Tooling
|
||||
- React Native DevTools
|
||||
|
||||
|
||||
+1
-1
@@ -33,7 +33,7 @@
|
||||
"test-typescript": "tsc -p packages/react-native/types/tsconfig.json",
|
||||
"test-generated-typescript": "tsc -p packages/react-native/types_generated/tsconfig.test.json",
|
||||
"test": "jest",
|
||||
"fantom": "JS_DIR='..' yarn jest --config packages/react-native-fantom/config/jest.config.js",
|
||||
"fantom": "JS_DIR='..' yarn jest --config private/react-native-fantom/config/jest.config.js",
|
||||
"trigger-react-native-release": "node ./scripts/releases-local/trigger-react-native-release.js",
|
||||
"update-lock": "npx yarn-deduplicate"
|
||||
},
|
||||
|
||||
@@ -16,4 +16,4 @@ Fantom. These are not meant to be consumed directly.
|
||||
|
||||
### Part of
|
||||
|
||||
- [Fantom](../../../../../../../react-native-fantom/__docs__/README.md).
|
||||
- [Fantom](../../../../../../../../private/react-native-fantom/__docs__/README.md).
|
||||
+4
-4
@@ -92,7 +92,7 @@ For a full API reference, please see the [inline documentation](../src/index.js)
|
||||
defined for the methods in the `@react-native/fantom` [module](../src/index.js).
|
||||
|
||||
You can check out existing files with the `-itest.js` suffix (e.g.:
|
||||
[`View-itest`](../../react-native/Libraries/Components/View/__tests__/View-itest.js))
|
||||
[`View-itest`](../../../packages/react-native/Libraries/Components/View/__tests__/View-itest.js))
|
||||
for code examples.
|
||||
|
||||
Run the test using the following command from the root of the React Native
|
||||
@@ -123,7 +123,7 @@ docblock at the top of the file. E.g.:
|
||||
Available pragmas:
|
||||
|
||||
- `@fantom_flags`: used to set overrides for
|
||||
[`ReactNativeFeatureFlags`](../../react-native/src/private/featureflags/__docs__/README.md).
|
||||
[`ReactNativeFeatureFlags`](../../../packages/react-native/src/private/featureflags/__docs__/README.md).
|
||||
- Example: `@fantom_flags name:value`.
|
||||
- Multiple flags can be defined in different lines or in the same line
|
||||
separated by spaces (e.g.: `@fantom_flags name:value otherName:otherValue`).
|
||||
@@ -195,7 +195,7 @@ The results of Fabric are mounted in a mock UI tree that can be asserted against
|
||||
and individual mounting instructions can be inspected.
|
||||
|
||||
You can even test your C++ code. For example, we have
|
||||
[Fantom tests for the new View Culling optimization](../../react-native/Libraries/Components/ScrollView/__tests__/ScrollView-viewCulling-itest.js),
|
||||
[Fantom tests for the new View Culling optimization](../../../packages/react-native/Libraries/Components/ScrollView/__tests__/ScrollView-viewCulling-itest.js),
|
||||
which is written in C++.
|
||||
|
||||
#### How can I test logic related to <ScrollView /> scrolling?
|
||||
@@ -343,6 +343,6 @@ The runner then follows these steps:
|
||||
CLI.
|
||||
- Hermes Compiler, to compile the JavaScript test code into Hermes bytecode.
|
||||
- The
|
||||
[React Native Feature Flags](../../react-native/src/private/featureflags/__docs__/README.md)
|
||||
[React Native Feature Flags](../../../packages/react-native/src/private/featureflags/__docs__/README.md)
|
||||
system, via the `@fantom_flags` pragmas defined in the docblock for test
|
||||
files.
|
||||
File renamed without changes.
Vendored
File renamed without changes.
+4
-4
@@ -19,15 +19,15 @@ const isCI =
|
||||
// In CI, we want to prewarm the caches/builds before running the tests so
|
||||
// that time isn't attributed to the first test that runs.
|
||||
const globalSetup /*: ?string */ = isCI
|
||||
? '<rootDir>/packages/react-native-fantom/runner/warmup/index.js'
|
||||
? '<rootDir>/private/react-native-fantom/runner/warmup/index.js'
|
||||
: null;
|
||||
|
||||
module.exports = {
|
||||
rootDir: path.resolve(__dirname, '../../..') /*:: as string */,
|
||||
roots: [
|
||||
'<rootDir>/packages/react-native',
|
||||
'<rootDir>/packages/react-native-fantom',
|
||||
'<rootDir>/packages/polyfills',
|
||||
'<rootDir>/private/react-native-fantom',
|
||||
],
|
||||
moduleFileExtensions: [
|
||||
...baseConfig.moduleFileExtensions,
|
||||
@@ -38,7 +38,7 @@ module.exports = {
|
||||
testRegex: '/__tests__/.*-itest(\\.fb)?\\.js$',
|
||||
testPathIgnorePatterns: baseConfig.testPathIgnorePatterns,
|
||||
transformIgnorePatterns: ['.*'],
|
||||
testRunner: '<rootDir>/packages/react-native-fantom/runner/index.js',
|
||||
watchPathIgnorePatterns: ['<rootDir>/packages/react-native-fantom/build/'],
|
||||
testRunner: '<rootDir>/private/react-native-fantom/runner/index.js',
|
||||
watchPathIgnorePatterns: ['<rootDir>/private/react-native-fantom/build/'],
|
||||
globalSetup,
|
||||
};
|
||||
File renamed without changes.
File renamed without changes.
File renamed without changes.
+1
-1
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"name": "@react-native/fantom",
|
||||
"private": true,
|
||||
"version": "0.80.0-main",
|
||||
"version": "0.0.0",
|
||||
"main": "src/index.js",
|
||||
"description": "Internal integration testing and benchmarking tool for React Native",
|
||||
"peerDependencies": {
|
||||
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
Vendored
+1
-1
@@ -209,7 +209,7 @@ module.exports = async function runTest(
|
||||
const setupModulePath = path.resolve(__dirname, '../runtime/setup.js');
|
||||
const featureFlagsModulePath = path.resolve(
|
||||
__dirname,
|
||||
'../../react-native/src/private/featureflags/ReactNativeFeatureFlags.js',
|
||||
'../../../packages/react-native/src/private/featureflags/ReactNativeFeatureFlags.js',
|
||||
);
|
||||
|
||||
const testResultsByConfig = [];
|
||||
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
Vendored
File renamed without changes.
Vendored
File renamed without changes.
File renamed without changes.
File renamed without changes.
Vendored
File renamed without changes.
File renamed without changes.
Vendored
File renamed without changes.
Vendored
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
+9
-14
@@ -15,8 +15,8 @@ import type {
|
||||
import type {MixedElement} from 'react';
|
||||
import type {RootTag} from 'react-native';
|
||||
import type ReactNativeDocument from 'react-native/src/private/webapis/dom/nodes/ReactNativeDocument';
|
||||
import type ReadOnlyNode from 'react-native/src/private/webapis/dom/nodes/ReadOnlyNode';
|
||||
|
||||
import ReactNativeElement from '../../react-native/src/private/webapis/dom/nodes/ReadOnlyNode';
|
||||
import * as Benchmark from './Benchmark';
|
||||
import {getConstants} from './Constants';
|
||||
import getFantomRenderedOutput from './getFantomRenderedOutput';
|
||||
@@ -226,9 +226,7 @@ export function unstable_produceFramesForDuration(milliseconds: number) {
|
||||
*
|
||||
* Note: This API is marked as unstable and may change in future versions.
|
||||
*/
|
||||
export function unstable_getDirectManipulationProps(
|
||||
node: ReactNativeElement,
|
||||
): mixed {
|
||||
export function unstable_getDirectManipulationProps(node: ReadOnlyNode): mixed {
|
||||
const shadowNode = getNativeNodeReference(node);
|
||||
return NativeFantom.getDirectManipulationProps(shadowNode);
|
||||
}
|
||||
@@ -394,7 +392,7 @@ export function createRoot(rootConfig?: RootConfig): Root {
|
||||
* ```
|
||||
*/
|
||||
export function enqueueNativeEvent(
|
||||
node: ReactNativeElement,
|
||||
node: ReadOnlyNode,
|
||||
type: string,
|
||||
payload?: $ReadOnly<{[key: string]: mixed}>,
|
||||
options?: $ReadOnly<{category?: NativeEventCategory, isUnique?: boolean}>,
|
||||
@@ -425,7 +423,7 @@ export function enqueueNativeEvent(
|
||||
* ```
|
||||
*/
|
||||
export function dispatchNativeEvent(
|
||||
node: ReactNativeElement,
|
||||
node: ReadOnlyNode,
|
||||
type: string,
|
||||
payload?: $ReadOnly<{[key: string]: mixed}>,
|
||||
options?: $ReadOnly<{category?: NativeEventCategory, isUnique?: boolean}>,
|
||||
@@ -487,7 +485,7 @@ export type ScrollEventOptions = {
|
||||
* ```
|
||||
*/
|
||||
export function enqueueScrollEvent(
|
||||
node: ReactNativeElement,
|
||||
node: ReadOnlyNode,
|
||||
options: ScrollEventOptions,
|
||||
) {
|
||||
const shadowNode = getNativeNodeReference(node);
|
||||
@@ -525,10 +523,7 @@ export function enqueueScrollEvent(
|
||||
* // Assert that changes from Fantom.scrollTo are in effect.
|
||||
* ```
|
||||
*/
|
||||
export function scrollTo(
|
||||
node: ReactNativeElement,
|
||||
options: ScrollEventOptions,
|
||||
) {
|
||||
export function scrollTo(node: ReadOnlyNode, options: ScrollEventOptions) {
|
||||
runOnUIThread(() => {
|
||||
enqueueScrollEvent(node, options);
|
||||
});
|
||||
@@ -561,7 +556,7 @@ export function scrollTo(
|
||||
* ```
|
||||
*/
|
||||
export function enqueueModalSizeUpdate(
|
||||
node: ReactNativeElement,
|
||||
node: ReadOnlyNode,
|
||||
size: $ReadOnly<{width: number, height: number}>,
|
||||
) {
|
||||
const shadowNode = getNativeNodeReference(node);
|
||||
@@ -642,7 +637,7 @@ if (typeof global.EventTarget === 'undefined') {
|
||||
* @param node The node for which to create a reference counting function.
|
||||
*/
|
||||
export function createShadowNodeReferenceCounter(
|
||||
node: ReactNativeElement,
|
||||
node: ReadOnlyNode,
|
||||
): () => number {
|
||||
let shadowNode = getNativeNodeReference(node);
|
||||
return NativeFantom.createShadowNodeReferenceCounter(shadowNode);
|
||||
@@ -655,7 +650,7 @@ export function createShadowNodeReferenceCounter(
|
||||
* @param node The node for which to create a revision getter.
|
||||
*/
|
||||
export function createShadowNodeRevisionGetter(
|
||||
node: ReactNativeElement,
|
||||
node: ReadOnlyNode,
|
||||
): () => ?number {
|
||||
let shadowNode = getNativeNodeReference(node);
|
||||
return NativeFantom.createShadowNodeRevisionGetter(shadowNode);
|
||||
File renamed without changes.
File renamed without changes.
+1
-1
@@ -8,7 +8,7 @@ set -e
|
||||
|
||||
SCRIPT_DIR=$(dirname "$(readlink -f "$0")")
|
||||
BUILD_DIR="$SCRIPT_DIR/build"
|
||||
REACT_NATIVE_ROOT_DIR=$(readlink -f "$SCRIPT_DIR/../../react-native")
|
||||
REACT_NATIVE_ROOT_DIR=$(readlink -f "$SCRIPT_DIR/../../../packages/react-native")
|
||||
|
||||
cmake -S "$SCRIPT_DIR" -B "$BUILD_DIR" \
|
||||
-DREACT_THIRD_PARTY_NDK_DIR="${REACT_NATIVE_ROOT_DIR}/ReactAndroid/build/third-party-ndk" \
|
||||
File renamed without changes.
File renamed without changes.
Reference in new issue
Block a user