Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 6 additions & 0 deletions .eslintrc.js
Original file line number Diff line number Diff line change
Expand Up @@ -124,5 +124,11 @@ module.exports = {
],
},
},
{
files: ['**/*-itest{.fb,}.js'],
rules: {
'lint/no-react-native-imports': 'off',
},
},
],
};
4 changes: 2 additions & 2 deletions packages/react-native-fantom/src/__tests__/Fantom-itest.js
Original file line number Diff line number Diff line change
Expand Up @@ -11,9 +11,9 @@

import 'react-native/Libraries/Core/InitializeCore';

import type {Root} from '..';
import type {Root} from '@react-native/fantom';

import Fantom from '..';
import Fantom from '@react-native/fantom';
import * as React from 'react';
import {Modal, ScrollView, Text, TextInput, View} from 'react-native';
import NativeFantom from 'react-native/src/private/testing/fantom/specs/NativeFantom';
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
* @oncall react_native
*/

import Fantom from '../..';
import Fantom from '@react-native/fantom';

let runs = 0;

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,12 +9,13 @@
* @oncall react_native
*/

import '../../../Core/InitializeCore.js';
import ensureInstance from '../../../../src/private/utilities/ensureInstance';
import ReactNativeElement from '../../../../src/private/webapis/dom/nodes/ReactNativeElement';
import ScrollView from '../ScrollView';
import 'react-native/Libraries/Core/InitializeCore';

import Fantom from '@react-native/fantom';
import * as React from 'react';
import {ScrollView} from 'react-native';
import ensureInstance from 'react-native/src/private/utilities/ensureInstance';
import ReactNativeElement from 'react-native/src/private/webapis/dom/nodes/ReactNativeElement';

describe('onScroll', () => {
it('delivers onScroll event', () => {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,14 +11,12 @@
* @fantom_flags enableSynchronousStateUpdates:true
*/

import '../../../Core/InitializeCore.js';
import ensureInstance from '../../../../src/private/utilities/ensureInstance';
import ReactNativeElement from '../../../../src/private/webapis/dom/nodes/ReactNativeElement';
import Modal from '../../../Modal/Modal';
import View from '../../View/View';
import ScrollView from '../ScrollView';
import 'react-native/Libraries/Core/InitializeCore.js';
import Fantom from '@react-native/fantom';
import * as React from 'react';
import {Modal, ScrollView, View} from 'react-native';
import ensureInstance from 'react-native/src/private/utilities/ensureInstance';
import ReactNativeElement from 'react-native/src/private/webapis/dom/nodes/ReactNativeElement';

test('basic culling', () => {
const root = Fantom.createRoot({viewportWidth: 100, viewportHeight: 100});
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,13 +9,14 @@
* @oncall react_native
*/

import '../../../Core/InitializeCore.js';
import ensureInstance from '../../../../src/private/utilities/ensureInstance';
import ReactNativeElement from '../../../../src/private/webapis/dom/nodes/ReactNativeElement';
import TextInput from '../TextInput';
import 'react-native/Libraries/Core/InitializeCore';

import Fantom from '@react-native/fantom';
import * as React from 'react';
import {useEffect, useLayoutEffect, useRef} from 'react';
import {TextInput} from 'react-native';
import ensureInstance from 'react-native/src/private/utilities/ensureInstance';
import ReactNativeElement from 'react-native/src/private/webapis/dom/nodes/ReactNativeElement';

describe('focus view command', () => {
it('creates view before dispatching view command from ref function', () => {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,11 +9,11 @@
* @oncall react_native
*/

import '../../../../Libraries/Core/InitializeCore.js';
import 'react-native/Libraries/Core/InitializeCore';

import View from '../View';
import Fantom from '@react-native/fantom';
import * as React from 'react';
import {View} from 'react-native';

let root;
let thousandViews: React.MixedElement;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,12 +9,11 @@
* @oncall react_native
*/

import '../../../Core/InitializeCore.js';
import 'react-native/Libraries/Core/InitializeCore';

import Fantom from '@react-native/fantom';
import * as React from 'react';

const View = require('../View').default;
import {View} from 'react-native';

describe('width and height style', () => {
it('handles correct percentage-based dimensions', () => {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,13 +9,13 @@
* @oncall react_native
*/

import View from '../../Components/View/View';
import Text from '../../Text/Text';
import LogBox from '../LogBox';
import 'react-native/Libraries/Core/InitializeCore';

import {renderLogBox} from './fantomHelpers';
import Fantom from '@react-native/fantom';
import * as React from 'react';
import {useEffect} from 'react';
import {LogBox, Text, View} from 'react-native';

// If a test uses this, it should have a component frame.
// This is a bug we'll fix in a followup.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,16 +9,17 @@
* @oncall react_native
*/

import '../../../Core/InitializeCore.js';
import type ReactNativeDocument from '../../../../src/private/webapis/dom/nodes/ReactNativeDocument';
import 'react-native/Libraries/Core/InitializeCore';

import type {
InternalInstanceHandle,
ViewConfig,
} from '../../../Renderer/shims/ReactNativeTypes';
} from 'react-native/Libraries/Renderer/shims/ReactNativeTypes';
import type ReactNativeDocument from 'react-native/src/private/webapis/dom/nodes/ReactNativeDocument';

import ReactNativeElement from '../../../../src/private/webapis/dom/nodes/ReactNativeElement';
import ReactFabricHostComponent from '../../../ReactNative/ReactFabricPublicInstance/ReactFabricHostComponent';
import Fantom from '@react-native/fantom';
import ReactFabricHostComponent from 'react-native/Libraries/ReactNative/ReactFabricPublicInstance/ReactFabricHostComponent';
import ReactNativeElement from 'react-native/src/private/webapis/dom/nodes/ReactNativeElement';

// Create fake parameters for the class.
const tag = 11;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,14 +9,15 @@
* @oncall react_native
*/

import {NativeEventCategory} from '../../../src/private/testing/fantom/specs/NativeFantom';
import ensureInstance from '../../../src/private/utilities/ensureInstance';
import ReactNativeElement from '../../../src/private/webapis/dom/nodes/ReactNativeElement';
import TextInput from '../../Components/TextInput/TextInput';
import Text from '../../Text/Text';
import 'react-native/Libraries/Core/InitializeCore';

import Fantom from '@react-native/fantom';
import * as React from 'react';
import {startTransition, useDeferredValue, useEffect, useState} from 'react';
import {Text, TextInput} from 'react-native';
import {NativeEventCategory} from 'react-native/src/private/testing/fantom/specs/NativeFantom';
import ensureInstance from 'react-native/src/private/utilities/ensureInstance';
import ReactNativeElement from 'react-native/src/private/webapis/dom/nodes/ReactNativeElement';

function ensureReactNativeElement(value: mixed): ReactNativeElement {
return ensureInstance(value, ReactNativeElement);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,11 +9,12 @@
* @oncall react_native
*/

import '../../Core/InitializeCore.js';
import View from '../../Components/View/View';
import 'react-native/Libraries/Core/InitializeCore';

import Fantom from '@react-native/fantom';
import * as React from 'react';
import {Suspense, startTransition} from 'react';
import {View} from 'react-native';

let resolveFunction: (() => void) | null = null;

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,16 +12,16 @@
* @fantom_flags enableSynchronousStateUpdates:true
*/

import ScrollView from '../../../../../Libraries/Components/ScrollView/ScrollView';
import Text from '../../../../../Libraries/Text/Text';
import ensureInstance from '../../../utilities/ensureInstance';
import ReactNativeElement from '../../../webapis/dom/nodes/ReactNativeElement';
import 'react-native/Libraries/Core/InitializeCore';

import Fantom from '@react-native/fantom';
import * as React from 'react';
import {useLayoutEffect} from 'react';
import {ScrollView, Text} from 'react-native';
import ensureInstance from 'react-native/src/private/utilities/ensureInstance';
import ReactNativeElement from 'react-native/src/private/webapis/dom/nodes/ReactNativeElement';

import '../../../../../Libraries/Core/InitializeCore';

import 'react-native/Libraries/Core/InitializeCore';
describe('UIConsistency', () => {
it('should provide consistent data from the tree within the same synchronous function', () => {
const root = Fantom.createRoot();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,11 +9,11 @@
* @oncall react_native
*/

import View from '../../../../../Libraries/Components/View/View';
import 'react-native/Libraries/Core/InitializeCore';

import Fantom from '@react-native/fantom';
import * as React from 'react';

import '../../../../../Libraries/Core/InitializeCore';
import {View} from 'react-native';

describe('ViewFlattening', () => {
/**
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,10 +9,10 @@
* @oncall react_native
*/

import '../../../../../../Libraries/Core/InitializeCore.js';
import 'react-native/Libraries/Core/InitializeCore';

import CustomEvent from '../CustomEvent';
import Event from '../Event';
import CustomEvent from 'react-native/src/private/webapis/dom/events/CustomEvent';
import Event from 'react-native/src/private/webapis/dom/events/Event';

describe('CustomEvent', () => {
it('extends Event', () => {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,10 +9,10 @@
* @oncall react_native
*/

import '../../../../../../Libraries/Core/InitializeCore.js';
import 'react-native/Libraries/Core/InitializeCore';

import Event from '../Event';
import {setInPassiveListenerFlag} from '../internals/EventInternals';
import Event from 'react-native/src/private/webapis/dom/events/Event';
import {setInPassiveListenerFlag} from 'react-native/src/private/webapis/dom/events/internals/EventInternals';

describe('Event', () => {
it('provides read-only constants for event phases', () => {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,16 +11,16 @@

// flowlint unsafe-getters-setters:off

import '../../../../../../Libraries/Core/InitializeCore.js';
import 'react-native/Libraries/Core/InitializeCore';

import type {EventCallback} from '../EventTarget';
import type {EventCallback} from 'react-native/src/private/webapis/dom/events/EventTarget';

import Event from '../Event';
import Event from 'react-native/src/private/webapis/dom/events/Event';
import {
getEventHandlerAttribute,
setEventHandlerAttribute,
} from '../EventHandlerAttributes';
import EventTarget from '../EventTarget';
} from 'react-native/src/private/webapis/dom/events/EventHandlerAttributes';
import EventTarget from 'react-native/src/private/webapis/dom/events/EventTarget';

class EventTargetSubclass extends EventTarget {
get oncustomevent(): EventCallback | null {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,12 +9,12 @@
* @oncall react_native
*/

import '../../../../../../Libraries/Core/InitializeCore.js';
import 'react-native/Libraries/Core/InitializeCore';

import Event from '../Event';
import EventTarget from '../EventTarget';
import createEventTargetHierarchyWithDepth from './createEventTargetHierarchyWithDepth';
import {unstable_benchmark} from '@react-native/fantom';
import Event from 'react-native/src/private/webapis/dom/events/Event';
import EventTarget from 'react-native/src/private/webapis/dom/events/EventTarget';

let event: Event;
let eventTarget: EventTarget;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,12 +9,12 @@
* @oncall react_native
*/

import '../../../../../../Libraries/Core/InitializeCore.js';
import 'react-native/Libraries/Core/InitializeCore';

import Event from '../Event';
import EventTarget from '../EventTarget';
import {dispatchTrustedEvent} from '../internals/EventTargetInternals';
import createEventTargetHierarchyWithDepth from './createEventTargetHierarchyWithDepth';
import Event from 'react-native/src/private/webapis/dom/events/Event';
import EventTarget from 'react-native/src/private/webapis/dom/events/EventTarget';
import {dispatchTrustedEvent} from 'react-native/src/private/webapis/dom/events/internals/EventTargetInternals';

let listenerCallOrder = 0;

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,16 +9,16 @@
* @oncall react_native
*/

import '../../../../../../Libraries/Core/InitializeCore.js';
import 'react-native/Libraries/Core/InitializeCore';

import View from '../../../../../../Libraries/Components/View/View';
import ensureInstance from '../../../../utilities/ensureInstance';
import ReactNativeDocument from '../ReactNativeDocument';
import ReactNativeElement from '../ReactNativeElement';
import ReadOnlyNode from '../ReadOnlyNode';
import Fantom from '@react-native/fantom';
import nullthrows from 'nullthrows';
import * as React from 'react';
import {View} from 'react-native';
import ensureInstance from 'react-native/src/private/utilities/ensureInstance';
import ReactNativeDocument from 'react-native/src/private/webapis/dom/nodes/ReactNativeDocument';
import ReactNativeElement from 'react-native/src/private/webapis/dom/nodes/ReactNativeElement';
import ReadOnlyNode from 'react-native/src/private/webapis/dom/nodes/ReadOnlyNode';

describe('ReactNativeDocument', () => {
it('is connected until the surface is destroyed', () => {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,22 +10,21 @@
* @fantom_flags enableDOMDocumentAPI:false
*/

import '../../../../../../Libraries/Core/InitializeCore.js';
import 'react-native/Libraries/Core/InitializeCore';

import ScrollView from '../../../../../../Libraries/Components/ScrollView/ScrollView';
import View from '../../../../../../Libraries/Components/View/View';
import Fantom from '@react-native/fantom';
import * as React from 'react';
import {ScrollView, View} from 'react-native';
import {
NativeText,
NativeVirtualText,
} from '../../../../../../Libraries/Text/TextNativeComponent';
import ensureInstance from '../../../../utilities/ensureInstance';
import HTMLCollection from '../../oldstylecollections/HTMLCollection';
import NodeList from '../../oldstylecollections/NodeList';
import ReactNativeElement from '../ReactNativeElement';
import ReadOnlyElement from '../ReadOnlyElement';
import ReadOnlyNode from '../ReadOnlyNode';
import Fantom from '@react-native/fantom';
import * as React from 'react';
} from 'react-native/Libraries/Text/TextNativeComponent';
import ensureInstance from 'react-native/src/private/utilities/ensureInstance';
import ReactNativeElement from 'react-native/src/private/webapis/dom/nodes/ReactNativeElement';
import ReadOnlyElement from 'react-native/src/private/webapis/dom/nodes/ReadOnlyElement';
import ReadOnlyNode from 'react-native/src/private/webapis/dom/nodes/ReadOnlyNode';
import HTMLCollection from 'react-native/src/private/webapis/dom/oldstylecollections/HTMLCollection';
import NodeList from 'react-native/src/private/webapis/dom/oldstylecollections/NodeList';

function ensureReactNativeElement(value: mixed): ReactNativeElement {
return ensureInstance(value, ReactNativeElement);
Expand Down
Loading