@@ -619,7 +621,7 @@ describe('ReactIncrementalSideEffects', () => {
it('can update a completed tree before it has a chance to commit', () => {
function Foo(props) {
- Scheduler.yieldValue('Foo');
+ Scheduler.unstable_yieldValue('Foo');
return
);
@@ -901,12 +903,12 @@ describe('ReactIncrementalSideEffects', () => {
this.setState({active: true});
}
render() {
- Scheduler.yieldValue('Bar');
+ Scheduler.unstable_yieldValue('Bar');
return
;
}
}
function Foo(props) {
- Scheduler.yieldValue('Foo');
+ Scheduler.unstable_yieldValue('Foo');
return (
diff --git a/packages/react-reconciler/src/__tests__/ReactIncrementalTriangle-test.internal.js b/packages/react-reconciler/src/__tests__/ReactIncrementalTriangle-test.internal.js
index dc1c3a07c2..d52bb9cfa0 100644
--- a/packages/react-reconciler/src/__tests__/ReactIncrementalTriangle-test.internal.js
+++ b/packages/react-reconciler/src/__tests__/ReactIncrementalTriangle-test.internal.js
@@ -216,7 +216,7 @@ describe('ReactIncrementalTriangle', () => {
}
render() {
if (yieldAfterEachRender) {
- Scheduler.yieldValue(this);
+ Scheduler.unstable_yieldValue(this);
}
const {counter, remainingDepth} = this.props;
return (
@@ -308,7 +308,7 @@ describe('ReactIncrementalTriangle', () => {
} else {
ReactNoop.render(
);
}
- Scheduler.unstable_flushWithoutYielding();
+ Scheduler.unstable_flushAllWithoutAsserting();
assertConsistentTree();
return appInstance;
}
@@ -390,7 +390,7 @@ describe('ReactIncrementalTriangle', () => {
Scheduler.unstable_flushNumberOfYields(action.unitsOfWork);
break;
case FLUSH_ALL:
- Scheduler.unstable_flushWithoutYielding();
+ Scheduler.unstable_flushAllWithoutAsserting();
break;
case STEP:
ReactNoop.deferredUpdates(() => {
@@ -432,7 +432,7 @@ describe('ReactIncrementalTriangle', () => {
assertConsistentTree(activeLeafIndices);
}
// Flush remaining work
- Scheduler.unstable_flushWithoutYielding();
+ Scheduler.unstable_flushAllWithoutAsserting();
assertConsistentTree(activeLeafIndices, expectedCounterAtEnd);
}
diff --git a/packages/react-reconciler/src/__tests__/ReactIncrementalUpdates-test.internal.js b/packages/react-reconciler/src/__tests__/ReactIncrementalUpdates-test.internal.js
index 8e46223f7f..58dac98890 100644
--- a/packages/react-reconciler/src/__tests__/ReactIncrementalUpdates-test.internal.js
+++ b/packages/react-reconciler/src/__tests__/ReactIncrementalUpdates-test.internal.js
@@ -34,7 +34,7 @@ describe('ReactIncrementalUpdates', () => {
class Foo extends React.Component {
state = {};
componentDidMount() {
- Scheduler.yieldValue('commit');
+ Scheduler.unstable_yieldValue('commit');
ReactNoop.deferredUpdates(() => {
// Has low priority
this.setState({b: 'b'});
@@ -150,7 +150,7 @@ describe('ReactIncrementalUpdates', () => {
function createUpdate(letter) {
return () => {
- Scheduler.yieldValue(letter);
+ Scheduler.unstable_yieldValue(letter);
return {
[letter]: letter,
};
@@ -221,7 +221,7 @@ describe('ReactIncrementalUpdates', () => {
function createUpdate(letter) {
return () => {
- Scheduler.yieldValue(letter);
+ Scheduler.unstable_yieldValue(letter);
return {
[letter]: letter,
};
@@ -461,9 +461,9 @@ describe('ReactIncrementalUpdates', () => {
const {useEffect} = React;
function App({label}) {
- Scheduler.yieldValue('Render: ' + label);
+ Scheduler.unstable_yieldValue('Render: ' + label);
useEffect(() => {
- Scheduler.yieldValue('Commit: ' + label);
+ Scheduler.unstable_yieldValue('Commit: ' + label);
});
return label;
}
@@ -478,22 +478,22 @@ describe('ReactIncrementalUpdates', () => {
// updates in separate batches are all flushed in the same callback
ReactNoop.act(() => {
ReactNoop.render(
);
- Scheduler.advanceTime(1000);
+ Scheduler.unstable_advanceTime(1000);
expect(Scheduler).toFlushAndYieldThrough(['Render: ']);
interrupt();
ReactNoop.render(
);
- Scheduler.advanceTime(1000);
+ Scheduler.unstable_advanceTime(1000);
expect(Scheduler).toFlushAndYieldThrough(['Render: ']);
interrupt();
ReactNoop.render(
);
- Scheduler.advanceTime(1000);
+ Scheduler.unstable_advanceTime(1000);
expect(Scheduler).toFlushAndYieldThrough(['Render: ']);
interrupt();
ReactNoop.render(
);
- Scheduler.advanceTime(1000);
+ Scheduler.unstable_advanceTime(1000);
expect(Scheduler).toFlushAndYieldThrough(['Render: ']);
interrupt();
@@ -519,27 +519,27 @@ describe('ReactIncrementalUpdates', () => {
// Now do the same thing over again, but this time, expire all the updates
// instead of flushing them normally.
ReactNoop.render(
);
- Scheduler.advanceTime(1000);
+ Scheduler.unstable_advanceTime(1000);
expect(Scheduler).toFlushAndYieldThrough(['Render: ']);
interrupt();
ReactNoop.render(
);
- Scheduler.advanceTime(1000);
+ Scheduler.unstable_advanceTime(1000);
expect(Scheduler).toFlushAndYieldThrough(['Render: ']);
interrupt();
ReactNoop.render(
);
- Scheduler.advanceTime(1000);
+ Scheduler.unstable_advanceTime(1000);
expect(Scheduler).toFlushAndYieldThrough(['Render: ']);
interrupt();
ReactNoop.render(
);
- Scheduler.advanceTime(1000);
+ Scheduler.unstable_advanceTime(1000);
expect(Scheduler).toFlushAndYieldThrough(['Render: ']);
interrupt();
// All the updates should render and commit in a single batch.
- Scheduler.advanceTime(10000);
+ Scheduler.unstable_advanceTime(10000);
expect(Scheduler).toHaveYielded(['Render: goodbye']);
// Passive effect
expect(Scheduler).toFlushAndYield(['Commit: goodbye']);
@@ -551,9 +551,9 @@ describe('ReactIncrementalUpdates', () => {
const {useEffect} = React;
function App({label}) {
- Scheduler.yieldValue('Render: ' + label);
+ Scheduler.unstable_yieldValue('Render: ' + label);
useEffect(() => {
- Scheduler.yieldValue('Commit: ' + label);
+ Scheduler.unstable_yieldValue('Commit: ' + label);
});
return label;
}
@@ -568,25 +568,25 @@ describe('ReactIncrementalUpdates', () => {
// updates in separate batches are all flushed in the same callback
ReactNoop.renderToRootWithID(
, 'a');
ReactNoop.renderToRootWithID(
, 'b');
- Scheduler.advanceTime(1000);
+ Scheduler.unstable_advanceTime(1000);
expect(Scheduler).toFlushAndYieldThrough(['Render: ']);
interrupt();
ReactNoop.renderToRootWithID(
, 'a');
ReactNoop.renderToRootWithID(
, 'b');
- Scheduler.advanceTime(1000);
+ Scheduler.unstable_advanceTime(1000);
expect(Scheduler).toFlushAndYieldThrough(['Render: ']);
interrupt();
ReactNoop.renderToRootWithID(
, 'a');
ReactNoop.renderToRootWithID(
, 'b');
- Scheduler.advanceTime(1000);
+ Scheduler.unstable_advanceTime(1000);
expect(Scheduler).toFlushAndYieldThrough(['Render: ']);
interrupt();
ReactNoop.renderToRootWithID(
, 'a');
ReactNoop.renderToRootWithID(
, 'b');
- Scheduler.advanceTime(1000);
+ Scheduler.unstable_advanceTime(1000);
expect(Scheduler).toFlushAndYieldThrough(['Render: ']);
interrupt();
@@ -621,30 +621,30 @@ describe('ReactIncrementalUpdates', () => {
// instead of flushing them normally.
ReactNoop.renderToRootWithID(
, 'a');
ReactNoop.renderToRootWithID(
, 'b');
- Scheduler.advanceTime(1000);
+ Scheduler.unstable_advanceTime(1000);
expect(Scheduler).toFlushAndYieldThrough(['Render: ']);
interrupt();
ReactNoop.renderToRootWithID(
, 'a');
ReactNoop.renderToRootWithID(
, 'b');
- Scheduler.advanceTime(1000);
+ Scheduler.unstable_advanceTime(1000);
expect(Scheduler).toFlushAndYieldThrough(['Render: ']);
interrupt();
ReactNoop.renderToRootWithID(
, 'a');
ReactNoop.renderToRootWithID(
, 'b');
- Scheduler.advanceTime(1000);
+ Scheduler.unstable_advanceTime(1000);
expect(Scheduler).toFlushAndYieldThrough(['Render: ']);
interrupt();
ReactNoop.renderToRootWithID(
, 'a');
ReactNoop.renderToRootWithID(
, 'b');
- Scheduler.advanceTime(1000);
+ Scheduler.unstable_advanceTime(1000);
expect(Scheduler).toFlushAndYieldThrough(['Render: ']);
interrupt();
// All the updates should render and commit in a single batch.
- Scheduler.advanceTime(10000);
+ Scheduler.unstable_advanceTime(10000);
expect(Scheduler).toHaveYielded([
'Render: goodbye',
'Commit: goodbye',
diff --git a/packages/react-reconciler/src/__tests__/ReactLazy-test.internal.js b/packages/react-reconciler/src/__tests__/ReactLazy-test.internal.js
index 4b241e08c5..05f0d3f440 100644
--- a/packages/react-reconciler/src/__tests__/ReactLazy-test.internal.js
+++ b/packages/react-reconciler/src/__tests__/ReactLazy-test.internal.js
@@ -21,7 +21,7 @@ describe('ReactLazy', () => {
});
function Text(props) {
- Scheduler.yieldValue(props.text);
+ Scheduler.unstable_yieldValue(props.text);
return props.text;
}
@@ -205,10 +205,10 @@ describe('ReactLazy', () => {
it('mount and reorder', async () => {
class Child extends React.Component {
componentDidMount() {
- Scheduler.yieldValue('Did mount: ' + this.props.label);
+ Scheduler.unstable_yieldValue('Did mount: ' + this.props.label);
}
componentDidUpdate() {
- Scheduler.yieldValue('Did update: ' + this.props.label);
+ Scheduler.unstable_yieldValue('Did update: ' + this.props.label);
}
render() {
return
;
@@ -299,7 +299,7 @@ describe('ReactLazy', () => {
it('resolves defaultProps without breaking memoization', async () => {
function LazyImpl(props) {
- Scheduler.yieldValue('Lazy');
+ Scheduler.unstable_yieldValue('Lazy');
return (
@@ -349,38 +349,42 @@ describe('ReactLazy', () => {
state = {};
static getDerivedStateFromProps(props) {
- Scheduler.yieldValue(`getDerivedStateFromProps: ${props.text}`);
+ Scheduler.unstable_yieldValue(
+ `getDerivedStateFromProps: ${props.text}`,
+ );
return null;
}
constructor(props) {
super(props);
- Scheduler.yieldValue(`constructor: ${this.props.text}`);
+ Scheduler.unstable_yieldValue(`constructor: ${this.props.text}`);
}
componentDidMount() {
- Scheduler.yieldValue(`componentDidMount: ${this.props.text}`);
+ Scheduler.unstable_yieldValue(`componentDidMount: ${this.props.text}`);
}
componentDidUpdate(prevProps) {
- Scheduler.yieldValue(
+ Scheduler.unstable_yieldValue(
`componentDidUpdate: ${prevProps.text} -> ${this.props.text}`,
);
}
componentWillUnmount() {
- Scheduler.yieldValue(`componentWillUnmount: ${this.props.text}`);
+ Scheduler.unstable_yieldValue(
+ `componentWillUnmount: ${this.props.text}`,
+ );
}
shouldComponentUpdate(nextProps) {
- Scheduler.yieldValue(
+ Scheduler.unstable_yieldValue(
`shouldComponentUpdate: ${this.props.text} -> ${nextProps.text}`,
);
return true;
}
getSnapshotBeforeUpdate(prevProps) {
- Scheduler.yieldValue(
+ Scheduler.unstable_yieldValue(
`getSnapshotBeforeUpdate: ${prevProps.text} -> ${this.props.text}`,
);
return null;
@@ -449,17 +453,19 @@ describe('ReactLazy', () => {
state = {};
UNSAFE_componentWillMount() {
- Scheduler.yieldValue(`UNSAFE_componentWillMount: ${this.props.text}`);
+ Scheduler.unstable_yieldValue(
+ `UNSAFE_componentWillMount: ${this.props.text}`,
+ );
}
UNSAFE_componentWillUpdate(nextProps) {
- Scheduler.yieldValue(
+ Scheduler.unstable_yieldValue(
`UNSAFE_componentWillUpdate: ${this.props.text} -> ${nextProps.text}`,
);
}
UNSAFE_componentWillReceiveProps(nextProps) {
- Scheduler.yieldValue(
+ Scheduler.unstable_yieldValue(
`UNSAFE_componentWillReceiveProps: ${this.props.text} -> ${
nextProps.text
}`,
@@ -512,7 +518,7 @@ describe('ReactLazy', () => {
it('resolves defaultProps on the outer wrapper but warns', async () => {
function T(props) {
- Scheduler.yieldValue(props.inner + ' ' + props.outer);
+ Scheduler.unstable_yieldValue(props.inner + ' ' + props.outer);
return props.inner + ' ' + props.outer;
}
T.defaultProps = {inner: 'Hi'};
@@ -655,7 +661,7 @@ describe('ReactLazy', () => {
await Promise.resolve();
expect(() => {
expect(Scheduler);
- Scheduler.flushAll();
+ Scheduler.unstable_flushAll();
}).toWarnDev([
'Invalid prop `inner` of type `string` supplied to `Add`, expected `number`.',
]);
@@ -862,7 +868,7 @@ describe('ReactLazy', () => {
it('includes lazy-loaded component in warning stack', async () => {
const LazyFoo = lazy(() => {
- Scheduler.yieldValue('Started loading');
+ Scheduler.unstable_yieldValue('Started loading');
const Foo = props => {[, ]}
;
return fakeImport(Foo);
});
@@ -905,7 +911,7 @@ describe('ReactLazy', () => {
}
return fakeImport(
React.forwardRef((props, ref) => {
- Scheduler.yieldValue('forwardRef');
+ Scheduler.unstable_yieldValue('forwardRef');
return ;
}),
);
diff --git a/packages/react-reconciler/src/__tests__/ReactMemo-test.internal.js b/packages/react-reconciler/src/__tests__/ReactMemo-test.internal.js
index b7e9d7e4e8..324f195d3a 100644
--- a/packages/react-reconciler/src/__tests__/ReactMemo-test.internal.js
+++ b/packages/react-reconciler/src/__tests__/ReactMemo-test.internal.js
@@ -36,7 +36,7 @@ describe('memo', () => {
}
function Text(props) {
- Scheduler.yieldValue(props.text);
+ Scheduler.unstable_yieldValue(props.text);
return ;
}
@@ -184,7 +184,7 @@ describe('memo', () => {
return ;
}
Counter = memo(Counter, (oldProps, newProps) => {
- Scheduler.yieldValue(
+ Scheduler.unstable_yieldValue(
`Old count: ${oldProps.count}, New count: ${newProps.count}`,
);
return oldProps.count === newProps.count;
diff --git a/packages/react-reconciler/src/__tests__/ReactNewContext-test.internal.js b/packages/react-reconciler/src/__tests__/ReactNewContext-test.internal.js
index e04b75dc59..d78425cdc1 100644
--- a/packages/react-reconciler/src/__tests__/ReactNewContext-test.internal.js
+++ b/packages/react-reconciler/src/__tests__/ReactNewContext-test.internal.js
@@ -30,7 +30,7 @@ describe('ReactNewContext', () => {
});
function Text(props) {
- Scheduler.yieldValue(props.text);
+ Scheduler.unstable_yieldValue(props.text);
return ;
}
@@ -160,7 +160,7 @@ describe('ReactNewContext', () => {
const ContextConsumer = getConsumer(Context);
function Provider(props) {
- Scheduler.yieldValue('Provider');
+ Scheduler.unstable_yieldValue('Provider');
return (
{props.children}
@@ -169,11 +169,11 @@ describe('ReactNewContext', () => {
}
function Consumer(props) {
- Scheduler.yieldValue('Consumer');
+ Scheduler.unstable_yieldValue('Consumer');
return (
{value => {
- Scheduler.yieldValue('Consumer render prop');
+ Scheduler.unstable_yieldValue('Consumer render prop');
return ;
}}
@@ -185,13 +185,13 @@ describe('ReactNewContext', () => {
return false;
}
render() {
- Scheduler.yieldValue('Indirection');
+ Scheduler.unstable_yieldValue('Indirection');
return this.props.children;
}
}
function App(props) {
- Scheduler.yieldValue('App');
+ Scheduler.unstable_yieldValue('App');
return (
@@ -229,7 +229,7 @@ describe('ReactNewContext', () => {
const ContextConsumer = getConsumer(Context);
function Provider(props) {
- Scheduler.yieldValue('Provider');
+ Scheduler.unstable_yieldValue('Provider');
return (
{props.children}
@@ -238,11 +238,11 @@ describe('ReactNewContext', () => {
}
function Consumer(props) {
- Scheduler.yieldValue('Consumer');
+ Scheduler.unstable_yieldValue('Consumer');
return (
{value => {
- Scheduler.yieldValue('Consumer render prop');
+ Scheduler.unstable_yieldValue('Consumer render prop');
return ;
}}
@@ -254,13 +254,13 @@ describe('ReactNewContext', () => {
return false;
}
render() {
- Scheduler.yieldValue('Indirection');
+ Scheduler.unstable_yieldValue('Indirection');
return this.props.children;
}
}
function App(props) {
- Scheduler.yieldValue('App');
+ Scheduler.unstable_yieldValue('App');
return (
@@ -463,7 +463,7 @@ describe('ReactNewContext', () => {
const ContextConsumer = getConsumer(Context);
function Provider(props) {
- Scheduler.yieldValue('Provider');
+ Scheduler.unstable_yieldValue('Provider');
return (
{props.children}
@@ -472,11 +472,11 @@ describe('ReactNewContext', () => {
}
function Consumer(props) {
- Scheduler.yieldValue('Consumer');
+ Scheduler.unstable_yieldValue('Consumer');
return (
{value => {
- Scheduler.yieldValue('Consumer render prop');
+ Scheduler.unstable_yieldValue('Consumer render prop');
return ;
}}
@@ -488,13 +488,13 @@ describe('ReactNewContext', () => {
return false;
}
render() {
- Scheduler.yieldValue('Indirection');
+ Scheduler.unstable_yieldValue('Indirection');
return this.props.children;
}
}
function App(props) {
- Scheduler.yieldValue('App');
+ Scheduler.unstable_yieldValue('App');
return (
@@ -605,7 +605,7 @@ describe('ReactNewContext', () => {
return (
{value => {
- Scheduler.yieldValue('Foo');
+ Scheduler.unstable_yieldValue('Foo');
return ;
}}
@@ -616,7 +616,7 @@ describe('ReactNewContext', () => {
return (
{value => {
- Scheduler.yieldValue('Bar');
+ Scheduler.unstable_yieldValue('Bar');
return ;
}}
@@ -704,7 +704,7 @@ describe('ReactNewContext', () => {
return (
{value => {
- Scheduler.yieldValue('Foo');
+ Scheduler.unstable_yieldValue('Foo');
return (
@@ -720,7 +720,7 @@ describe('ReactNewContext', () => {
return (
{value => {
- Scheduler.yieldValue('Bar');
+ Scheduler.unstable_yieldValue('Bar');
return (
@@ -808,7 +808,7 @@ describe('ReactNewContext', () => {
class Child extends React.Component {
state = {step: 0};
render() {
- Scheduler.yieldValue('Child');
+ Scheduler.unstable_yieldValue('Child');
return (
{
{value => {
- Scheduler.yieldValue('Consumer render prop');
+ Scheduler.unstable_yieldValue('Consumer render prop');
return (child = inst)} context={value} />;
}}
@@ -847,24 +847,24 @@ describe('ReactNewContext', () => {
const Consumer = getConsumer(Context);
function renderChildValue(value) {
- Scheduler.yieldValue('Consumer');
+ Scheduler.unstable_yieldValue('Consumer');
return ;
}
function ChildWithInlineRenderCallback() {
- Scheduler.yieldValue('ChildWithInlineRenderCallback');
+ Scheduler.unstable_yieldValue('ChildWithInlineRenderCallback');
// Note: we are intentionally passing an inline arrow. Don't refactor.
return {value => renderChildValue(value)};
}
function ChildWithCachedRenderCallback() {
- Scheduler.yieldValue('ChildWithCachedRenderCallback');
+ Scheduler.unstable_yieldValue('ChildWithCachedRenderCallback');
return {renderChildValue};
}
class PureIndirection extends React.PureComponent {
render() {
- Scheduler.yieldValue('PureIndirection');
+ Scheduler.unstable_yieldValue('PureIndirection');
return (
@@ -876,7 +876,7 @@ describe('ReactNewContext', () => {
class App extends React.Component {
render() {
- Scheduler.yieldValue('App');
+ Scheduler.unstable_yieldValue('App');
return (
@@ -988,7 +988,7 @@ describe('ReactNewContext', () => {
};
render() {
- Scheduler.yieldValue('App');
+ Scheduler.unstable_yieldValue('App');
return (
@@ -1016,7 +1016,7 @@ describe('ReactNewContext', () => {
return (
{value => {
- Scheduler.yieldValue('Consumer');
+ Scheduler.unstable_yieldValue('Consumer');
return ;
}}
@@ -1079,7 +1079,7 @@ describe('ReactNewContext', () => {
const Context = React.createContext(0);
function Foo(props) {
- Scheduler.yieldValue('Foo');
+ Scheduler.unstable_yieldValue('Foo');
return null;
}
@@ -1119,14 +1119,14 @@ describe('ReactNewContext', () => {
const Context = React.createContext(0);
function Child() {
- Scheduler.yieldValue('Child');
+ Scheduler.unstable_yieldValue('Child');
return ;
}
const children = ;
function App(props) {
- Scheduler.yieldValue('App');
+ Scheduler.unstable_yieldValue('App');
return (
{children}
);
@@ -1150,7 +1150,7 @@ describe('ReactNewContext', () => {
const Context = React.createContext(0);
function Child() {
- Scheduler.yieldValue('Child');
+ Scheduler.unstable_yieldValue('Child');
return ;
}
@@ -1165,7 +1165,7 @@ describe('ReactNewContext', () => {
return {legacyValue: this.state.legacyValue};
}
render() {
- Scheduler.yieldValue('LegacyProvider');
+ Scheduler.unstable_yieldValue('LegacyProvider');
return this.props.children;
}
}
@@ -1173,7 +1173,7 @@ describe('ReactNewContext', () => {
class App extends React.Component {
state = {value: 1};
render() {
- Scheduler.yieldValue('App');
+ Scheduler.unstable_yieldValue('App');
return (
{this.props.children}
@@ -1299,12 +1299,12 @@ describe('ReactNewContext', () => {
};
renderConsumer = context => {
- Scheduler.yieldValue('App#renderConsumer');
+ Scheduler.unstable_yieldValue('App#renderConsumer');
return ;
};
render() {
- Scheduler.yieldValue('App');
+ Scheduler.unstable_yieldValue('App');
return (
{this.renderConsumer}
@@ -1439,12 +1439,12 @@ describe('ReactNewContext', () => {
};
renderConsumer = context => {
- Scheduler.yieldValue('App#renderConsumer');
+ Scheduler.unstable_yieldValue('App#renderConsumer');
return ;
};
render() {
- Scheduler.yieldValue('App');
+ Scheduler.unstable_yieldValue('App');
return (
{this.renderConsumer}
@@ -1571,12 +1571,12 @@ describe('ReactNewContext', () => {
};
renderConsumer = context => {
- Scheduler.yieldValue('App#renderConsumer');
+ Scheduler.unstable_yieldValue('App#renderConsumer');
return ;
};
render() {
- Scheduler.yieldValue('App');
+ Scheduler.unstable_yieldValue('App');
return (
{this.renderConsumer}
@@ -1699,7 +1699,7 @@ describe('ReactNewContext', () => {
return false;
}
render() {
- Scheduler.yieldValue();
+ Scheduler.unstable_yieldValue();
if (this.props.depth >= this.props.maxDepth) {
return null;
}
@@ -1777,7 +1777,7 @@ describe('ReactNewContext', () => {
actions.forEach(action => {
switch (action.type) {
case FLUSH_ALL:
- Scheduler.unstable_flushWithoutYielding();
+ Scheduler.unstable_flushAllWithoutAsserting();
break;
case FLUSH:
Scheduler.unstable_flushNumberOfYields(action.unitsOfWork);
@@ -1795,7 +1795,7 @@ describe('ReactNewContext', () => {
assertConsistentTree();
});
- Scheduler.unstable_flushWithoutYielding();
+ Scheduler.unstable_flushAllWithoutAsserting();
assertConsistentTree(finalExpectedValues);
}
diff --git a/packages/react-reconciler/src/__tests__/ReactNoopRendererAct-test.js b/packages/react-reconciler/src/__tests__/ReactNoopRendererAct-test.js
index 04f7febe84..38be78044c 100644
--- a/packages/react-reconciler/src/__tests__/ReactNoopRendererAct-test.js
+++ b/packages/react-reconciler/src/__tests__/ReactNoopRendererAct-test.js
@@ -39,9 +39,9 @@ describe('ReactNoop.act()', () => {
function App() {
let [ctr, setCtr] = React.useState(0);
async function someAsyncFunction() {
- Scheduler.yieldValue('stage 1');
+ Scheduler.unstable_yieldValue('stage 1');
await null;
- Scheduler.yieldValue('stage 2');
+ Scheduler.unstable_yieldValue('stage 2');
await null;
setCtr(1);
}
diff --git a/packages/react-reconciler/src/__tests__/ReactSchedulerIntegration-test.internal.js b/packages/react-reconciler/src/__tests__/ReactSchedulerIntegration-test.internal.js
index 944ba1190c..04af7b027a 100644
--- a/packages/react-reconciler/src/__tests__/ReactSchedulerIntegration-test.internal.js
+++ b/packages/react-reconciler/src/__tests__/ReactSchedulerIntegration-test.internal.js
@@ -57,7 +57,9 @@ describe('ReactSchedulerIntegration', () => {
it('has correct priority during rendering', () => {
function ReadPriority() {
- Scheduler.yieldValue('Priority: ' + getCurrentPriorityAsString());
+ Scheduler.unstable_yieldValue(
+ 'Priority: ' + getCurrentPriorityAsString(),
+ );
return null;
}
ReactNoop.render();
@@ -76,7 +78,9 @@ describe('ReactSchedulerIntegration', () => {
it('has correct priority when continuing a render after yielding', () => {
function ReadPriority() {
- Scheduler.yieldValue('Priority: ' + getCurrentPriorityAsString());
+ Scheduler.unstable_yieldValue(
+ 'Priority: ' + getCurrentPriorityAsString(),
+ );
return null;
}
@@ -106,9 +110,11 @@ describe('ReactSchedulerIntegration', () => {
it('layout effects have immediate priority', () => {
const {useLayoutEffect} = React;
function ReadPriority() {
- Scheduler.yieldValue('Render priority: ' + getCurrentPriorityAsString());
+ Scheduler.unstable_yieldValue(
+ 'Render priority: ' + getCurrentPriorityAsString(),
+ );
useLayoutEffect(() => {
- Scheduler.yieldValue(
+ Scheduler.unstable_yieldValue(
'Layout priority: ' + getCurrentPriorityAsString(),
);
});
@@ -125,9 +131,11 @@ describe('ReactSchedulerIntegration', () => {
it('passive effects have the same priority as render', () => {
const {useEffect} = React;
function ReadPriority() {
- Scheduler.yieldValue('Render priority: ' + getCurrentPriorityAsString());
+ Scheduler.unstable_yieldValue(
+ 'Render priority: ' + getCurrentPriorityAsString(),
+ );
useEffect(() => {
- Scheduler.yieldValue(
+ Scheduler.unstable_yieldValue(
'Passive priority: ' + getCurrentPriorityAsString(),
);
});
@@ -153,7 +161,9 @@ describe('ReactSchedulerIntegration', () => {
it('after completing a level of work, infers priority of the next batch based on its expiration time', () => {
function App({label}) {
- Scheduler.yieldValue(`${label} [${getCurrentPriorityAsString()}]`);
+ Scheduler.unstable_yieldValue(
+ `${label} [${getCurrentPriorityAsString()}]`,
+ );
return label;
}
@@ -172,20 +182,20 @@ describe('ReactSchedulerIntegration', () => {
const root = ReactNoop.createRoot();
root.render('Initial');
- Scheduler.flushAll();
+ Scheduler.unstable_flushAll();
- scheduleCallback(NormalPriority, () => Scheduler.yieldValue('A'));
- scheduleCallback(NormalPriority, () => Scheduler.yieldValue('B'));
- scheduleCallback(NormalPriority, () => Scheduler.yieldValue('C'));
+ scheduleCallback(NormalPriority, () => Scheduler.unstable_yieldValue('A'));
+ scheduleCallback(NormalPriority, () => Scheduler.unstable_yieldValue('B'));
+ scheduleCallback(NormalPriority, () => Scheduler.unstable_yieldValue('C'));
// Schedule a React render. React will request a paint after committing it.
root.render('Update');
// Advance time just to be sure the next tasks have lower priority
- Scheduler.advanceTime(2000);
+ Scheduler.unstable_advanceTime(2000);
- scheduleCallback(NormalPriority, () => Scheduler.yieldValue('D'));
- scheduleCallback(NormalPriority, () => Scheduler.yieldValue('E'));
+ scheduleCallback(NormalPriority, () => Scheduler.unstable_yieldValue('D'));
+ scheduleCallback(NormalPriority, () => Scheduler.unstable_yieldValue('E'));
// Flush everything up to the next paint. Should yield after the
// React commit.
diff --git a/packages/react-reconciler/src/__tests__/ReactSuspense-test.internal.js b/packages/react-reconciler/src/__tests__/ReactSuspense-test.internal.js
index 54ea1f0816..32e8336d7c 100644
--- a/packages/react-reconciler/src/__tests__/ReactSuspense-test.internal.js
+++ b/packages/react-reconciler/src/__tests__/ReactSuspense-test.internal.js
@@ -40,12 +40,12 @@ describe('ReactSuspense', () => {
listeners = [{resolve, reject}];
setTimeout(() => {
if (textResourceShouldFail) {
- Scheduler.yieldValue(`Promise rejected [${text}]`);
+ Scheduler.unstable_yieldValue(`Promise rejected [${text}]`);
status = 'rejected';
value = new Error('Failed to load: ' + text);
listeners.forEach(listener => listener.reject(value));
} else {
- Scheduler.yieldValue(`Promise resolved [${text}]`);
+ Scheduler.unstable_yieldValue(`Promise resolved [${text}]`);
status = 'resolved';
value = text;
listeners.forEach(listener => listener.resolve(value));
@@ -72,7 +72,7 @@ describe('ReactSuspense', () => {
});
function Text(props) {
- Scheduler.yieldValue(props.text);
+ Scheduler.unstable_yieldValue(props.text);
return props.text;
}
@@ -80,13 +80,13 @@ describe('ReactSuspense', () => {
const text = props.text;
try {
TextResource.read([props.text, props.ms]);
- Scheduler.yieldValue(text);
+ Scheduler.unstable_yieldValue(text);
return text;
} catch (promise) {
if (typeof promise.then === 'function') {
- Scheduler.yieldValue(`Suspend! [${text}]`);
+ Scheduler.unstable_yieldValue(`Suspend! [${text}]`);
} else {
- Scheduler.yieldValue(`Error! [${text}]`);
+ Scheduler.unstable_yieldValue(`Error! [${text}]`);
}
throw promise;
}
@@ -94,12 +94,12 @@ describe('ReactSuspense', () => {
it('suspends rendering and continues later', () => {
function Bar(props) {
- Scheduler.yieldValue('Bar');
+ Scheduler.unstable_yieldValue('Bar');
return props.children;
}
function Foo({renderBar}) {
- Scheduler.yieldValue('Foo');
+ Scheduler.unstable_yieldValue('Foo');
return (
}>
{renderBar ? (
@@ -211,10 +211,10 @@ describe('ReactSuspense', () => {
function Async() {
if (!didResolve) {
- Scheduler.yieldValue('Suspend!');
+ Scheduler.unstable_yieldValue('Suspend!');
throw thenable;
}
- Scheduler.yieldValue('Async');
+ Scheduler.unstable_yieldValue('Async');
return 'Async';
}
@@ -266,10 +266,10 @@ describe('ReactSuspense', () => {
it('mounts a lazy class component in non-concurrent mode', async () => {
class Class extends React.Component {
componentDidMount() {
- Scheduler.yieldValue('Did mount: ' + this.props.label);
+ Scheduler.unstable_yieldValue('Did mount: ' + this.props.label);
}
componentDidUpdate() {
- Scheduler.yieldValue('Did update: ' + this.props.label);
+ Scheduler.unstable_yieldValue('Did update: ' + this.props.label);
}
render() {
return ;
@@ -346,13 +346,13 @@ describe('ReactSuspense', () => {
it('a mounted class component can suspend without losing state', () => {
class TextWithLifecycle extends React.Component {
componentDidMount() {
- Scheduler.yieldValue(`Mount [${this.props.text}]`);
+ Scheduler.unstable_yieldValue(`Mount [${this.props.text}]`);
}
componentDidUpdate() {
- Scheduler.yieldValue(`Update [${this.props.text}]`);
+ Scheduler.unstable_yieldValue(`Update [${this.props.text}]`);
}
componentWillUnmount() {
- Scheduler.yieldValue(`Unmount [${this.props.text}]`);
+ Scheduler.unstable_yieldValue(`Unmount [${this.props.text}]`);
}
render() {
return ;
@@ -363,15 +363,17 @@ describe('ReactSuspense', () => {
class AsyncTextWithLifecycle extends React.Component {
state = {step: 1};
componentDidMount() {
- Scheduler.yieldValue(`Mount [${this.props.text}:${this.state.step}]`);
+ Scheduler.unstable_yieldValue(
+ `Mount [${this.props.text}:${this.state.step}]`,
+ );
}
componentDidUpdate() {
- Scheduler.yieldValue(
+ Scheduler.unstable_yieldValue(
`Update [${this.props.text}:${this.state.step}]`,
);
}
componentWillUnmount() {
- Scheduler.yieldValue(
+ Scheduler.unstable_yieldValue(
`Unmount [${this.props.text}:${this.state.step}]`,
);
}
@@ -381,13 +383,13 @@ describe('ReactSuspense', () => {
const ms = this.props.ms;
try {
TextResource.read([text, ms]);
- Scheduler.yieldValue(text);
+ Scheduler.unstable_yieldValue(text);
return text;
} catch (promise) {
if (typeof promise.then === 'function') {
- Scheduler.yieldValue(`Suspend! [${text}]`);
+ Scheduler.unstable_yieldValue(`Suspend! [${text}]`);
} else {
- Scheduler.yieldValue(`Error! [${text}]`);
+ Scheduler.unstable_yieldValue(`Error! [${text}]`);
}
throw promise;
}
@@ -572,20 +574,20 @@ describe('ReactSuspense', () => {
it('suspends in a class that has componentWillUnmount and is then deleted', () => {
class AsyncTextWithUnmount extends React.Component {
componentWillUnmount() {
- Scheduler.yieldValue('will unmount');
+ Scheduler.unstable_yieldValue('will unmount');
}
render() {
const text = this.props.text;
const ms = this.props.ms;
try {
TextResource.read([text, ms]);
- Scheduler.yieldValue(text);
+ Scheduler.unstable_yieldValue(text);
return text;
} catch (promise) {
if (typeof promise.then === 'function') {
- Scheduler.yieldValue(`Suspend! [${text}]`);
+ Scheduler.unstable_yieldValue(`Suspend! [${text}]`);
} else {
- Scheduler.yieldValue(`Error! [${text}]`);
+ Scheduler.unstable_yieldValue(`Error! [${text}]`);
}
throw promise;
}
@@ -616,20 +618,20 @@ describe('ReactSuspense', () => {
useLayoutEffect(
() => {
- Scheduler.yieldValue('Did commit: ' + text);
+ Scheduler.unstable_yieldValue('Did commit: ' + text);
},
[text],
);
try {
TextResource.read([props.text, props.ms]);
- Scheduler.yieldValue(text);
+ Scheduler.unstable_yieldValue(text);
return text;
} catch (promise) {
if (typeof promise.then === 'function') {
- Scheduler.yieldValue(`Suspend! [${text}]`);
+ Scheduler.unstable_yieldValue(`Suspend! [${text}]`);
} else {
- Scheduler.yieldValue(`Error! [${text}]`);
+ Scheduler.unstable_yieldValue(`Error! [${text}]`);
}
throw promise;
}
@@ -852,13 +854,13 @@ describe('ReactSuspense', () => {
const fullText = `${text}:${step}`;
try {
TextResource.read([fullText, ms]);
- Scheduler.yieldValue(fullText);
+ Scheduler.unstable_yieldValue(fullText);
return fullText;
} catch (promise) {
if (typeof promise.then === 'function') {
- Scheduler.yieldValue(`Suspend! [${fullText}]`);
+ Scheduler.unstable_yieldValue(`Suspend! [${fullText}]`);
} else {
- Scheduler.yieldValue(`Error! [${fullText}]`);
+ Scheduler.unstable_yieldValue(`Error! [${fullText}]`);
}
throw promise;
}
diff --git a/packages/react-reconciler/src/__tests__/ReactSuspenseFuzz-test.internal.js b/packages/react-reconciler/src/__tests__/ReactSuspenseFuzz-test.internal.js
index c6607df92e..a5e3e44320 100644
--- a/packages/react-reconciler/src/__tests__/ReactSuspenseFuzz-test.internal.js
+++ b/packages/react-reconciler/src/__tests__/ReactSuspenseFuzz-test.internal.js
@@ -56,7 +56,7 @@ describe('ReactSuspenseFuzz', () => {
};
const timeoutID = setTimeout(() => {
pendingTasks.delete(task);
- Scheduler.yieldValue(task.label);
+ Scheduler.unstable_yieldValue(task.label);
setStep(i + 1);
}, remountAfter);
pendingTasks.add(task);
@@ -89,7 +89,7 @@ describe('ReactSuspenseFuzz', () => {
};
const timeoutID = setTimeout(() => {
pendingTasks.delete(task);
- Scheduler.yieldValue(task.label);
+ Scheduler.unstable_yieldValue(task.label);
setStep([i + 1, suspendFor]);
}, beginAfter);
pendingTasks.add(task);
@@ -121,36 +121,36 @@ describe('ReactSuspenseFuzz', () => {
setTimeout(() => {
cache.set(fullText, fullText);
pendingTasks.delete(task);
- Scheduler.yieldValue(task.label);
+ Scheduler.unstable_yieldValue(task.label);
resolve();
}, delay);
},
};
cache.set(fullText, thenable);
- Scheduler.yieldValue(`Suspended! [${fullText}]`);
+ Scheduler.unstable_yieldValue(`Suspended! [${fullText}]`);
throw thenable;
} else if (typeof resolvedText.then === 'function') {
const thenable = resolvedText;
- Scheduler.yieldValue(`Suspended! [${fullText}]`);
+ Scheduler.unstable_yieldValue(`Suspended! [${fullText}]`);
throw thenable;
}
} else {
resolvedText = fullText;
}
- Scheduler.yieldValue(resolvedText);
+ Scheduler.unstable_yieldValue(resolvedText);
return resolvedText;
}
function resolveAllTasks() {
- Scheduler.unstable_flushWithoutYielding();
+ Scheduler.unstable_flushAllWithoutAsserting();
let elapsedTime = 0;
while (pendingTasks && pendingTasks.size > 0) {
if ((elapsedTime += 1000) > 1000000) {
throw new Error('Something did not resolve properly.');
}
ReactNoop.act(() => jest.advanceTimersByTime(1000));
- Scheduler.unstable_flushWithoutYielding();
+ Scheduler.unstable_flushAllWithoutAsserting();
}
}
diff --git a/packages/react-reconciler/src/__tests__/ReactSuspenseList-test.internal.js b/packages/react-reconciler/src/__tests__/ReactSuspenseList-test.internal.js
index b5f0fc66c3..b028734bab 100644
--- a/packages/react-reconciler/src/__tests__/ReactSuspenseList-test.internal.js
+++ b/packages/react-reconciler/src/__tests__/ReactSuspenseList-test.internal.js
@@ -21,7 +21,7 @@ describe('ReactSuspenseList', () => {
});
function Text(props) {
- Scheduler.yieldValue(props.text);
+ Scheduler.unstable_yieldValue(props.text);
return {props.text};
}
@@ -29,7 +29,7 @@ describe('ReactSuspenseList', () => {
let resolved = false;
let Component = function() {
if (!resolved) {
- Scheduler.yieldValue('Suspend! [' + text + ']');
+ Scheduler.unstable_yieldValue('Suspend! [' + text + ']');
throw promise;
}
return ;
@@ -54,7 +54,7 @@ describe('ReactSuspenseList', () => {
ReactNoop.render();
- expect(() => Scheduler.flushAll()).toWarnDev([
+ expect(() => Scheduler.unstable_flushAll()).toWarnDev([
'Warning: "something" is not a supported revealOrder on ' +
'. Did you mean "together", "forwards" or "backwards"?' +
'\n in SuspenseList (at **)' +
@@ -73,7 +73,7 @@ describe('ReactSuspenseList', () => {
ReactNoop.render();
- expect(() => Scheduler.flushAll()).toWarnDev([
+ expect(() => Scheduler.unstable_flushAll()).toWarnDev([
'Warning: "TOGETHER" is not a valid value for revealOrder on ' +
'. Use lowercase "together" instead.' +
'\n in SuspenseList (at **)' +
@@ -92,7 +92,7 @@ describe('ReactSuspenseList', () => {
ReactNoop.render();
- expect(() => Scheduler.flushAll()).toWarnDev([
+ expect(() => Scheduler.unstable_flushAll()).toWarnDev([
'Warning: "forward" is not a valid value for revealOrder on ' +
'. React uses the -s suffix in the spelling. ' +
'Use "forwards" instead.' +
@@ -1050,12 +1050,12 @@ describe('ReactSuspenseList', () => {
expect(Scheduler).toFlushAndYieldThrough(['A']);
- Scheduler.advanceTime(300);
+ Scheduler.unstable_advanceTime(300);
jest.advanceTimersByTime(300);
expect(Scheduler).toFlushAndYieldThrough(['B']);
- Scheduler.advanceTime(300);
+ Scheduler.unstable_advanceTime(300);
jest.advanceTimersByTime(300);
// We've still not been able to show anything on the screen even though
diff --git a/packages/react-reconciler/src/__tests__/ReactSuspensePlaceholder-test.internal.js b/packages/react-reconciler/src/__tests__/ReactSuspensePlaceholder-test.internal.js
index 878e3cf01b..822fc629f3 100644
--- a/packages/react-reconciler/src/__tests__/ReactSuspensePlaceholder-test.internal.js
+++ b/packages/react-reconciler/src/__tests__/ReactSuspensePlaceholder-test.internal.js
@@ -46,12 +46,12 @@ describe('ReactSuspensePlaceholder', () => {
listeners = [{resolve, reject}];
setTimeout(() => {
if (textResourceShouldFail) {
- Scheduler.yieldValue(`Promise rejected [${text}]`);
+ Scheduler.unstable_yieldValue(`Promise rejected [${text}]`);
status = 'rejected';
value = new Error('Failed to load: ' + text);
listeners.forEach(listener => listener.reject(value));
} else {
- Scheduler.yieldValue(`Promise resolved [${text}]`);
+ Scheduler.unstable_yieldValue(`Promise resolved [${text}]`);
status = 'resolved';
value = text;
listeners.forEach(listener => listener.resolve(value));
@@ -78,22 +78,22 @@ describe('ReactSuspensePlaceholder', () => {
});
function Text({fakeRenderDuration = 0, text = 'Text'}) {
- Scheduler.advanceTime(fakeRenderDuration);
- Scheduler.yieldValue(text);
+ Scheduler.unstable_advanceTime(fakeRenderDuration);
+ Scheduler.unstable_yieldValue(text);
return text;
}
function AsyncText({fakeRenderDuration = 0, ms, text}) {
- Scheduler.advanceTime(fakeRenderDuration);
+ Scheduler.unstable_advanceTime(fakeRenderDuration);
try {
TextResource.read([text, ms]);
- Scheduler.yieldValue(text);
+ Scheduler.unstable_yieldValue(text);
return text;
} catch (promise) {
if (typeof promise.then === 'function') {
- Scheduler.yieldValue(`Suspend! [${text}]`);
+ Scheduler.unstable_yieldValue(`Suspend! [${text}]`);
} else {
- Scheduler.yieldValue(`Error! [${text}]`);
+ Scheduler.unstable_yieldValue(`Error! [${text}]`);
}
throw promise;
}
@@ -103,7 +103,7 @@ describe('ReactSuspensePlaceholder', () => {
class HiddenText extends React.PureComponent {
render() {
const text = this.props.text;
- Scheduler.yieldValue(text);
+ Scheduler.unstable_yieldValue(text);
return {text};
}
}
@@ -278,19 +278,19 @@ describe('ReactSuspensePlaceholder', () => {
onRender = jest.fn();
const Fallback = () => {
- Scheduler.yieldValue('Fallback');
- Scheduler.advanceTime(10);
+ Scheduler.unstable_yieldValue('Fallback');
+ Scheduler.unstable_advanceTime(10);
return 'Loading...';
};
const Suspending = () => {
- Scheduler.yieldValue('Suspending');
- Scheduler.advanceTime(2);
+ Scheduler.unstable_yieldValue('Suspending');
+ Scheduler.unstable_advanceTime(2);
return ;
};
App = ({shouldSuspend, text = 'Text', textRenderDuration = 5}) => {
- Scheduler.yieldValue('App');
+ Scheduler.unstable_yieldValue('App');
return (
}>
diff --git a/packages/react-reconciler/src/__tests__/ReactSuspenseWithNoopRenderer-test.internal.js b/packages/react-reconciler/src/__tests__/ReactSuspenseWithNoopRenderer-test.internal.js
index 43b4bcf952..a32b6b2af8 100644
--- a/packages/react-reconciler/src/__tests__/ReactSuspenseWithNoopRenderer-test.internal.js
+++ b/packages/react-reconciler/src/__tests__/ReactSuspenseWithNoopRenderer-test.internal.js
@@ -26,10 +26,10 @@ describe('ReactSuspenseWithNoopRenderer', () => {
return new Promise((resolve, reject) =>
setTimeout(() => {
if (textResourceShouldFail) {
- Scheduler.yieldValue(`Promise rejected [${text}]`);
+ Scheduler.unstable_yieldValue(`Promise rejected [${text}]`);
reject(new Error('Failed to load: ' + text));
} else {
- Scheduler.yieldValue(`Promise resolved [${text}]`);
+ Scheduler.unstable_yieldValue(`Promise resolved [${text}]`);
resolve(text);
}
}, ms),
@@ -66,7 +66,7 @@ describe('ReactSuspenseWithNoopRenderer', () => {
}
function Text(props) {
- Scheduler.yieldValue(props.text);
+ Scheduler.unstable_yieldValue(props.text);
return ;
}
@@ -74,13 +74,13 @@ describe('ReactSuspenseWithNoopRenderer', () => {
const text = props.text;
try {
TextResource.read([props.text, props.ms]);
- Scheduler.yieldValue(text);
+ Scheduler.unstable_yieldValue(text);
return ;
} catch (promise) {
if (typeof promise.then === 'function') {
- Scheduler.yieldValue(`Suspend! [${text}]`);
+ Scheduler.unstable_yieldValue(`Suspend! [${text}]`);
} else {
- Scheduler.yieldValue(`Error! [${text}]`);
+ Scheduler.unstable_yieldValue(`Error! [${text}]`);
}
throw promise;
}
@@ -97,7 +97,7 @@ describe('ReactSuspenseWithNoopRenderer', () => {
ReactNoop.render();
- expect(() => Scheduler.flushAll()).toWarnDev([
+ expect(() => Scheduler.unstable_flushAll()).toWarnDev([
'Warning: maxDuration has been removed from React. ' +
'Remove the maxDuration prop.' +
'\n in Suspense (at **)' +
@@ -107,12 +107,12 @@ describe('ReactSuspenseWithNoopRenderer', () => {
it('does not restart rendering for initial render', async () => {
function Bar(props) {
- Scheduler.yieldValue('Bar');
+ Scheduler.unstable_yieldValue('Bar');
return props.children;
}
function Foo() {
- Scheduler.yieldValue('Foo');
+ Scheduler.unstable_yieldValue('Foo');
return (
}>
@@ -142,7 +142,7 @@ describe('ReactSuspenseWithNoopRenderer', () => {
expect(ReactNoop.getChildren()).toEqual([]);
// Flush the promise completely
- Scheduler.advanceTime(100);
+ Scheduler.unstable_advanceTime(100);
await advanceTimers(100);
expect(Scheduler).toHaveYielded(['Promise resolved [A]']);
@@ -171,12 +171,12 @@ describe('ReactSuspenseWithNoopRenderer', () => {
it('suspends rendering and continues later', async () => {
function Bar(props) {
- Scheduler.yieldValue('Bar');
+ Scheduler.unstable_yieldValue('Bar');
return props.children;
}
function Foo({renderBar}) {
- Scheduler.yieldValue('Foo');
+ Scheduler.unstable_yieldValue('Foo');
return (
}>
{renderBar ? (
@@ -772,7 +772,7 @@ describe('ReactSuspenseWithNoopRenderer', () => {
,
);
- Scheduler.advanceTime(10000);
+ Scheduler.unstable_advanceTime(10000);
expect(Scheduler).toHaveYielded([
'Suspend! [A]',
'Suspend! [B]',
@@ -884,10 +884,10 @@ describe('ReactSuspenseWithNoopRenderer', () => {
it('flushes all expired updates in a single batch', async () => {
class Foo extends React.Component {
componentDidUpdate() {
- Scheduler.yieldValue('Commit: ' + this.props.text);
+ Scheduler.unstable_yieldValue('Commit: ' + this.props.text);
}
componentDidMount() {
- Scheduler.yieldValue('Commit: ' + this.props.text);
+ Scheduler.unstable_yieldValue('Commit: ' + this.props.text);
}
render() {
return (
@@ -909,7 +909,7 @@ describe('ReactSuspenseWithNoopRenderer', () => {
jest.advanceTimersByTime(1000);
ReactNoop.render();
- Scheduler.advanceTime(10000);
+ Scheduler.unstable_advanceTime(10000);
jest.advanceTimersByTime(10000);
expect(Scheduler).toHaveYielded([
@@ -919,7 +919,7 @@ describe('ReactSuspenseWithNoopRenderer', () => {
]);
expect(ReactNoop.getChildren()).toEqual([span('Loading...')]);
- Scheduler.advanceTime(20000);
+ Scheduler.unstable_advanceTime(20000);
await advanceTimers(20000);
expect(Scheduler).toHaveYielded(['Promise resolved [goodbye]']);
expect(ReactNoop.getChildren()).toEqual([span('Loading...')]);
@@ -932,7 +932,7 @@ describe('ReactSuspenseWithNoopRenderer', () => {
// Regression test. This test used to fall into an infinite loop.
function ExpensiveText({text}) {
// This causes the update to expire.
- Scheduler.advanceTime(10000);
+ Scheduler.unstable_advanceTime(10000);
// Then something suspends.
return ;
}
@@ -1044,7 +1044,7 @@ describe('ReactSuspenseWithNoopRenderer', () => {
// Update.
text.current.setState({step: 2}, () =>
- Scheduler.yieldValue('Update did commit'),
+ Scheduler.unstable_yieldValue('Update did commit'),
);
expect(ReactNoop.flushNextYield()).toEqual([
@@ -1078,10 +1078,10 @@ describe('ReactSuspenseWithNoopRenderer', () => {
it('does not re-render siblings in loose mode', async () => {
class TextWithLifecycle extends React.Component {
componentDidMount() {
- Scheduler.yieldValue(`Mount [${this.props.text}]`);
+ Scheduler.unstable_yieldValue(`Mount [${this.props.text}]`);
}
componentDidUpdate() {
- Scheduler.yieldValue(`Update [${this.props.text}]`);
+ Scheduler.unstable_yieldValue(`Update [${this.props.text}]`);
}
render() {
return ;
@@ -1090,10 +1090,10 @@ describe('ReactSuspenseWithNoopRenderer', () => {
class AsyncTextWithLifecycle extends React.Component {
componentDidMount() {
- Scheduler.yieldValue(`Mount [${this.props.text}]`);
+ Scheduler.unstable_yieldValue(`Mount [${this.props.text}]`);
}
componentDidUpdate() {
- Scheduler.yieldValue(`Update [${this.props.text}]`);
+ Scheduler.unstable_yieldValue(`Update [${this.props.text}]`);
}
render() {
return ;
@@ -1111,7 +1111,7 @@ describe('ReactSuspenseWithNoopRenderer', () => {
}
ReactNoop.renderLegacySyncRoot(, () =>
- Scheduler.yieldValue('Commit root'),
+ Scheduler.unstable_yieldValue('Commit root'),
);
expect(Scheduler).toHaveYielded([
'A',
@@ -1154,24 +1154,24 @@ describe('ReactSuspenseWithNoopRenderer', () => {
constructor(props) {
super(props);
const text = props.text;
- Scheduler.yieldValue('constructor');
+ Scheduler.unstable_yieldValue('constructor');
try {
TextResource.read([props.text, props.ms]);
this.state = {text};
} catch (promise) {
if (typeof promise.then === 'function') {
- Scheduler.yieldValue(`Suspend! [${text}]`);
+ Scheduler.unstable_yieldValue(`Suspend! [${text}]`);
} else {
- Scheduler.yieldValue(`Error! [${text}]`);
+ Scheduler.unstable_yieldValue(`Error! [${text}]`);
}
throw promise;
}
}
componentDidMount() {
- Scheduler.yieldValue('componentDidMount');
+ Scheduler.unstable_yieldValue('componentDidMount');
}
render() {
- Scheduler.yieldValue(this.state.text);
+ Scheduler.unstable_yieldValue(this.state.text);
return ;
}
}
@@ -1248,7 +1248,7 @@ describe('ReactSuspenseWithNoopRenderer', () => {
const child = useRef(null);
useLayoutEffect(() => {
- Scheduler.yieldValue(ReactNoop.getPendingChildrenAsJSX());
+ Scheduler.unstable_yieldValue(ReactNoop.getPendingChildrenAsJSX());
});
return (
@@ -1291,7 +1291,9 @@ describe('ReactSuspenseWithNoopRenderer', () => {
const child = useRef(null);
useLayoutEffect(() => {
- Scheduler.yieldValue('Child is hidden: ' + child.current.hidden);
+ Scheduler.unstable_yieldValue(
+ 'Child is hidden: ' + child.current.hidden,
+ );
});
return (
@@ -1329,13 +1331,13 @@ describe('ReactSuspenseWithNoopRenderer', () => {
it('does not call lifecycles of a suspended component', async () => {
class TextWithLifecycle extends React.Component {
componentDidMount() {
- Scheduler.yieldValue(`Mount [${this.props.text}]`);
+ Scheduler.unstable_yieldValue(`Mount [${this.props.text}]`);
}
componentDidUpdate() {
- Scheduler.yieldValue(`Update [${this.props.text}]`);
+ Scheduler.unstable_yieldValue(`Update [${this.props.text}]`);
}
componentWillUnmount() {
- Scheduler.yieldValue(`Unmount [${this.props.text}]`);
+ Scheduler.unstable_yieldValue(`Unmount [${this.props.text}]`);
}
render() {
return ;
@@ -1344,26 +1346,26 @@ describe('ReactSuspenseWithNoopRenderer', () => {
class AsyncTextWithLifecycle extends React.Component {
componentDidMount() {
- Scheduler.yieldValue(`Mount [${this.props.text}]`);
+ Scheduler.unstable_yieldValue(`Mount [${this.props.text}]`);
}
componentDidUpdate() {
- Scheduler.yieldValue(`Update [${this.props.text}]`);
+ Scheduler.unstable_yieldValue(`Update [${this.props.text}]`);
}
componentWillUnmount() {
- Scheduler.yieldValue(`Unmount [${this.props.text}]`);
+ Scheduler.unstable_yieldValue(`Unmount [${this.props.text}]`);
}
render() {
const text = this.props.text;
const ms = this.props.ms;
try {
TextResource.read([text, ms]);
- Scheduler.yieldValue(text);
+ Scheduler.unstable_yieldValue(text);
return ;
} catch (promise) {
if (typeof promise.then === 'function') {
- Scheduler.yieldValue(`Suspend! [${text}]`);
+ Scheduler.unstable_yieldValue(`Suspend! [${text}]`);
} else {
- Scheduler.yieldValue(`Error! [${text}]`);
+ Scheduler.unstable_yieldValue(`Error! [${text}]`);
}
throw promise;
}
@@ -1381,7 +1383,7 @@ describe('ReactSuspenseWithNoopRenderer', () => {
}
ReactNoop.renderLegacySyncRoot(, () =>
- Scheduler.yieldValue('Commit root'),
+ Scheduler.unstable_yieldValue('Commit root'),
);
expect(Scheduler).toHaveYielded([
'A',
@@ -1407,7 +1409,7 @@ describe('ReactSuspenseWithNoopRenderer', () => {
it('suspends for longer if something took a long (CPU bound) time to render', async () => {
function Foo({renderContent}) {
- Scheduler.yieldValue('Foo');
+ Scheduler.unstable_yieldValue('Foo');
return (
}>
{renderContent ? : null}
@@ -1419,12 +1421,12 @@ describe('ReactSuspenseWithNoopRenderer', () => {
expect(Scheduler).toFlushAndYield(['Foo']);
ReactNoop.render();
- Scheduler.advanceTime(100);
+ Scheduler.unstable_advanceTime(100);
await advanceTimers(100);
// Start rendering
expect(Scheduler).toFlushAndYieldThrough(['Foo']);
// For some reason it took a long time to render Foo.
- Scheduler.advanceTime(1250);
+ Scheduler.unstable_advanceTime(1250);
await advanceTimers(1250);
expect(Scheduler).toFlushAndYield([
// A suspends
@@ -1435,7 +1437,7 @@ describe('ReactSuspenseWithNoopRenderer', () => {
expect(ReactNoop.getChildren()).toEqual([]);
// Flush some of the time
- Scheduler.advanceTime(450);
+ Scheduler.unstable_advanceTime(450);
await advanceTimers(450);
// Because we've already been waiting for so long we can
// wait a bit longer. Still nothing...
@@ -1443,14 +1445,14 @@ describe('ReactSuspenseWithNoopRenderer', () => {
expect(ReactNoop.getChildren()).toEqual([]);
// Eventually we'll show the fallback.
- Scheduler.advanceTime(500);
+ Scheduler.unstable_advanceTime(500);
await advanceTimers(500);
// No need to rerender.
expect(Scheduler).toFlushWithoutYielding();
expect(ReactNoop.getChildren()).toEqual([span('Loading...')]);
// Flush the promise completely
- Scheduler.advanceTime(4500);
+ Scheduler.unstable_advanceTime(4500);
await advanceTimers(4500);
// Renders successfully
expect(Scheduler).toHaveYielded(['Promise resolved [A]']);
@@ -1460,7 +1462,7 @@ describe('ReactSuspenseWithNoopRenderer', () => {
it('does not suspends if a fallback has been shown for a long time', async () => {
function Foo() {
- Scheduler.yieldValue('Foo');
+ Scheduler.unstable_yieldValue('Foo');
return (
}>
@@ -1485,7 +1487,7 @@ describe('ReactSuspenseWithNoopRenderer', () => {
expect(ReactNoop.getChildren()).toEqual([span('Loading...')]);
// Wait a long time.
- Scheduler.advanceTime(5000);
+ Scheduler.unstable_advanceTime(5000);
await advanceTimers(5000);
expect(Scheduler).toHaveYielded(['Promise resolved [A]']);
@@ -1504,7 +1506,7 @@ describe('ReactSuspenseWithNoopRenderer', () => {
]);
// Flush the last promise completely
- Scheduler.advanceTime(5000);
+ Scheduler.unstable_advanceTime(5000);
await advanceTimers(5000);
// Renders successfully
expect(Scheduler).toHaveYielded(['Promise resolved [B]']);
@@ -1514,7 +1516,7 @@ describe('ReactSuspenseWithNoopRenderer', () => {
it('does suspend if a fallback has been shown for a short time', async () => {
function Foo() {
- Scheduler.yieldValue('Foo');
+ Scheduler.unstable_yieldValue('Foo');
return (
}>
@@ -1539,7 +1541,7 @@ describe('ReactSuspenseWithNoopRenderer', () => {
expect(ReactNoop.getChildren()).toEqual([span('Loading...')]);
// Wait a short time.
- Scheduler.advanceTime(250);
+ Scheduler.unstable_advanceTime(250);
await advanceTimers(250);
expect(Scheduler).toHaveYielded(['Promise resolved [A]']);
@@ -1554,7 +1556,7 @@ describe('ReactSuspenseWithNoopRenderer', () => {
// wait a bit longer. Still nothing...
expect(ReactNoop.getChildren()).toEqual([span('Loading...')]);
- Scheduler.advanceTime(200);
+ Scheduler.unstable_advanceTime(200);
await advanceTimers(200);
// Before we commit another Promise resolves.
@@ -1568,7 +1570,7 @@ describe('ReactSuspenseWithNoopRenderer', () => {
it('does not suspend for very long after a higher priority update', async () => {
function Foo({renderContent}) {
- Scheduler.yieldValue('Foo');
+ Scheduler.unstable_yieldValue('Foo');
return (
}>
{renderContent ? : null}
@@ -1585,7 +1587,7 @@ describe('ReactSuspenseWithNoopRenderer', () => {
expect(Scheduler).toFlushAndYieldThrough(['Foo']);
// Advance some time.
- Scheduler.advanceTime(100);
+ Scheduler.unstable_advanceTime(100);
await advanceTimers(100);
expect(Scheduler).toFlushAndYield([
@@ -1597,7 +1599,7 @@ describe('ReactSuspenseWithNoopRenderer', () => {
expect(ReactNoop.getChildren()).toEqual([]);
// Flush some of the time
- Scheduler.advanceTime(500);
+ Scheduler.unstable_advanceTime(500);
expect(() => {
jest.advanceTimersByTime(500);
}).toWarnDev(
@@ -1616,7 +1618,7 @@ describe('ReactSuspenseWithNoopRenderer', () => {
it('warns when suspending inside discrete update', async () => {
function A() {
- Scheduler.yieldValue('A');
+ Scheduler.unstable_yieldValue('A');
TextResource.read(['A', 1000]);
return 'A';
}
@@ -1650,7 +1652,7 @@ describe('ReactSuspenseWithNoopRenderer', () => {
// Timeout and commit the fallback
expect(() => {
- Scheduler.flushAll();
+ Scheduler.unstable_flushAll();
}).toWarnDev(
'The following components suspended during a user-blocking update: A, C',
{withoutStack: true},
@@ -1659,7 +1661,7 @@ describe('ReactSuspenseWithNoopRenderer', () => {
it('shows the parent fallback if the inner fallback should be avoided', async () => {
function Foo({showC}) {
- Scheduler.yieldValue('Foo');
+ Scheduler.unstable_yieldValue('Foo');
return (
}>
{
expect(ReactNoop.getChildren()).toEqual([span('Initial load...')]);
// Eventually we resolve and show the data.
- Scheduler.advanceTime(5000);
+ Scheduler.unstable_advanceTime(5000);
await advanceTimers(5000);
expect(Scheduler).toHaveYielded(['Promise resolved [A]']);
expect(Scheduler).toFlushAndYield(['A', 'B']);
@@ -1699,7 +1701,7 @@ describe('ReactSuspenseWithNoopRenderer', () => {
'B',
]);
// Flush to skip suspended time.
- Scheduler.advanceTime(600);
+ Scheduler.unstable_advanceTime(600);
await advanceTimers(600);
// Since the optional suspense boundary is already showing its content,
// we have to use the inner fallback instead.
@@ -1710,7 +1712,7 @@ describe('ReactSuspenseWithNoopRenderer', () => {
]);
// Later we load the data.
- Scheduler.advanceTime(5000);
+ Scheduler.unstable_advanceTime(5000);
await advanceTimers(5000);
expect(Scheduler).toHaveYielded(['Promise resolved [C]']);
expect(Scheduler).toFlushAndYield(['A', 'C']);
@@ -1719,7 +1721,7 @@ describe('ReactSuspenseWithNoopRenderer', () => {
it('favors showing the inner fallback for nested top level avoided fallback', async () => {
function Foo({showB}) {
- Scheduler.yieldValue('Foo');
+ Scheduler.unstable_yieldValue('Foo');
return (
{
'Loading B...',
]);
// Flush to skip suspended time.
- Scheduler.advanceTime(600);
+ Scheduler.unstable_advanceTime(600);
await advanceTimers(600);
expect(ReactNoop.getChildren()).toEqual([span('A'), span('Loading B...')]);
@@ -1750,7 +1752,7 @@ describe('ReactSuspenseWithNoopRenderer', () => {
it('keeps showing an avoided parent fallback if it is already showing', async () => {
function Foo({showB}) {
- Scheduler.yieldValue('Foo');
+ Scheduler.unstable_yieldValue('Foo');
return (
}>
{
expect(ReactNoop.getChildren()).toEqual([span('A')]);
// Flush to skip suspended time.
- Scheduler.advanceTime(600);
+ Scheduler.unstable_advanceTime(600);
await advanceTimers(600);
expect(ReactNoop.getChildren()).toEqual([span('A'), span('Loading B...')]);
@@ -1809,7 +1811,7 @@ describe('ReactSuspenseWithNoopRenderer', () => {
// Took a long time to render. This is to ensure we get a long suspense time.
// Could also use something like withSuspenseConfig to simulate this.
- Scheduler.advanceTime(1500);
+ Scheduler.unstable_advanceTime(1500);
await advanceTimers(1500);
expect(Scheduler).toFlushAndYield(['Suspend! [A]', 'Loading A...']);
@@ -1826,14 +1828,14 @@ describe('ReactSuspenseWithNoopRenderer', () => {
expect(ReactNoop.getChildren()).toEqual([]);
// Advance time a little bit.
- Scheduler.advanceTime(150);
+ Scheduler.unstable_advanceTime(150);
await advanceTimers(150);
// We should not have committed yet because we had a long suspense time.
expect(ReactNoop.getChildren()).toEqual([]);
// Flush to skip suspended time.
- Scheduler.advanceTime(600);
+ Scheduler.unstable_advanceTime(600);
await advanceTimers(600);
expect(ReactNoop.getChildren()).toEqual([span('Loading A...')]);
@@ -1861,12 +1863,12 @@ describe('ReactSuspenseWithNoopRenderer', () => {
expect(Scheduler).toFlushAndYield(['Suspend! [A]', 'Loading...']);
// Only a short time is needed to unsuspend the initial loading state.
- Scheduler.advanceTime(400);
+ Scheduler.unstable_advanceTime(400);
await advanceTimers(400);
expect(ReactNoop.getChildren()).toEqual([span('Loading...')]);
// Later we load the data.
- Scheduler.advanceTime(5000);
+ Scheduler.unstable_advanceTime(5000);
await advanceTimers(5000);
expect(Scheduler).toHaveYielded(['Promise resolved [A]']);
expect(Scheduler).toFlushAndYield(['A']);
@@ -1879,11 +1881,11 @@ describe('ReactSuspenseWithNoopRenderer', () => {
);
expect(Scheduler).toFlushAndYield(['Suspend! [B]', 'Loading...']);
- Scheduler.advanceTime(1000);
+ Scheduler.unstable_advanceTime(1000);
await advanceTimers(1000);
// Even after a second, we have still not yet flushed the loading state.
expect(ReactNoop.getChildren()).toEqual([span('A')]);
- Scheduler.advanceTime(1100);
+ Scheduler.unstable_advanceTime(1100);
await advanceTimers(1100);
// After the timeout, we do show the loading state.
expect(ReactNoop.getChildren()).toEqual([
@@ -1891,7 +1893,7 @@ describe('ReactSuspenseWithNoopRenderer', () => {
span('Loading...'),
]);
// Later we load the data.
- Scheduler.advanceTime(3000);
+ Scheduler.unstable_advanceTime(3000);
await advanceTimers(3000);
expect(Scheduler).toHaveYielded(['Promise resolved [B]']);
expect(Scheduler).toFlushAndYield(['B']);
@@ -1925,13 +1927,13 @@ describe('ReactSuspenseWithNoopRenderer', () => {
expect(Scheduler).toFlushAndYield(['Suspend! [A]', 'Loading...']);
// Only a short time is needed to unsuspend the initial loading state.
- Scheduler.advanceTime(400);
+ Scheduler.unstable_advanceTime(400);
await advanceTimers(400);
expect(ReactNoop.getChildren()).toEqual([span('Loading...')]);
});
// Later we load the data.
- Scheduler.advanceTime(5000);
+ Scheduler.unstable_advanceTime(5000);
await advanceTimers(5000);
expect(Scheduler).toHaveYielded(['Promise resolved [A]']);
expect(Scheduler).toFlushAndYield(['A']);
@@ -1945,11 +1947,11 @@ describe('ReactSuspenseWithNoopRenderer', () => {
);
expect(Scheduler).toFlushAndYield(['Suspend! [B]', 'Loading...']);
- Scheduler.advanceTime(1000);
+ Scheduler.unstable_advanceTime(1000);
await advanceTimers(1000);
// Even after a second, we have still not yet flushed the loading state.
expect(ReactNoop.getChildren()).toEqual([span('A')]);
- Scheduler.advanceTime(1100);
+ Scheduler.unstable_advanceTime(1100);
await advanceTimers(1100);
// After the timeout, we do show the loading state.
expect(ReactNoop.getChildren()).toEqual([
@@ -1958,7 +1960,7 @@ describe('ReactSuspenseWithNoopRenderer', () => {
]);
});
// Later we load the data.
- Scheduler.advanceTime(3000);
+ Scheduler.unstable_advanceTime(3000);
await advanceTimers(3000);
expect(Scheduler).toHaveYielded(['Promise resolved [B]']);
expect(Scheduler).toFlushAndYield(['B']);
@@ -1995,13 +1997,13 @@ describe('ReactSuspenseWithNoopRenderer', () => {
expect(Scheduler).toFlushAndYield(['Suspend! [A]', 'Loading...']);
// Only a short time is needed to unsuspend the initial loading state.
- Scheduler.advanceTime(400);
+ Scheduler.unstable_advanceTime(400);
await advanceTimers(400);
expect(ReactNoop.getChildren()).toEqual([span('Loading...')]);
});
// Later we load the data.
- Scheduler.advanceTime(5000);
+ Scheduler.unstable_advanceTime(5000);
await advanceTimers(5000);
expect(Scheduler).toHaveYielded(['Promise resolved [A]']);
expect(Scheduler).toFlushAndYield(['A']);
@@ -2015,11 +2017,11 @@ describe('ReactSuspenseWithNoopRenderer', () => {
);
expect(Scheduler).toFlushAndYield(['Suspend! [B]', 'Loading...']);
- Scheduler.advanceTime(1000);
+ Scheduler.unstable_advanceTime(1000);
await advanceTimers(1000);
// Even after a second, we have still not yet flushed the loading state.
expect(ReactNoop.getChildren()).toEqual([span('A')]);
- Scheduler.advanceTime(1100);
+ Scheduler.unstable_advanceTime(1100);
await advanceTimers(1100);
// After the timeout, we do show the loading state.
expect(ReactNoop.getChildren()).toEqual([
@@ -2028,7 +2030,7 @@ describe('ReactSuspenseWithNoopRenderer', () => {
]);
});
// Later we load the data.
- Scheduler.advanceTime(3000);
+ Scheduler.unstable_advanceTime(3000);
await advanceTimers(3000);
expect(Scheduler).toHaveYielded(['Promise resolved [B]']);
expect(Scheduler).toFlushAndYield(['B']);
@@ -2048,7 +2050,7 @@ describe('ReactSuspenseWithNoopRenderer', () => {
// Initial render.
ReactNoop.render();
expect(Scheduler).toFlushAndYield(['Suspend! [A]', 'Loading...']);
- Scheduler.advanceTime(2000);
+ Scheduler.unstable_advanceTime(2000);
await advanceTimers(2000);
expect(Scheduler).toHaveYielded(['Promise resolved [A]']);
expect(Scheduler).toFlushAndYield(['A']);
@@ -2069,7 +2071,7 @@ describe('ReactSuspenseWithNoopRenderer', () => {
expect(Scheduler).toFlushAndYield(['Suspend! [B]', 'Loading...']);
// Suspended
expect(ReactNoop.getChildren()).toEqual([span('A')]);
- Scheduler.advanceTime(500);
+ Scheduler.unstable_advanceTime(500);
await advanceTimers(500);
// Committed loading state.
expect(ReactNoop.getChildren()).toEqual([
@@ -2077,7 +2079,7 @@ describe('ReactSuspenseWithNoopRenderer', () => {
span('Loading...'),
]);
- Scheduler.advanceTime(2000);
+ Scheduler.unstable_advanceTime(2000);
await advanceTimers(2000);
expect(Scheduler).toHaveYielded(['Promise resolved [B]']);
expect(Scheduler).toFlushAndYield(['B']);
@@ -2102,11 +2104,11 @@ describe('ReactSuspenseWithNoopRenderer', () => {
'Loading...',
]);
expect(ReactNoop.getChildren()).toEqual([span('B')]);
- Scheduler.advanceTime(1200);
+ Scheduler.unstable_advanceTime(1200);
await advanceTimers(1200);
// Even after a second, we have still not yet flushed the loading state.
expect(ReactNoop.getChildren()).toEqual([span('B')]);
- Scheduler.advanceTime(1200);
+ Scheduler.unstable_advanceTime(1200);
await advanceTimers(1200);
// After the two second timeout we show the loading state.
expect(ReactNoop.getChildren()).toEqual([
@@ -2132,7 +2134,7 @@ describe('ReactSuspenseWithNoopRenderer', () => {
// Initial render.
ReactNoop.render();
expect(Scheduler).toFlushAndYield(['Hi!', 'Suspend! [A]', 'Loading...']);
- Scheduler.advanceTime(3000);
+ Scheduler.unstable_advanceTime(3000);
await advanceTimers(3000);
expect(Scheduler).toHaveYielded(['Promise resolved [A]']);
expect(Scheduler).toFlushAndYield(['Hi!', 'A']);
@@ -2148,12 +2150,12 @@ describe('ReactSuspenseWithNoopRenderer', () => {
// Suspended
expect(ReactNoop.getChildren()).toEqual([span('Hi!'), span('A')]);
- Scheduler.advanceTime(1800);
+ Scheduler.unstable_advanceTime(1800);
await advanceTimers(1800);
expect(Scheduler).toFlushAndYield([]);
// We should still be suspended here because this loading state should be avoided.
expect(ReactNoop.getChildren()).toEqual([span('Hi!'), span('A')]);
- Scheduler.advanceTime(1500);
+ Scheduler.unstable_advanceTime(1500);
await advanceTimers(1500);
expect(Scheduler).toHaveYielded(['Promise resolved [B]']);
expect(ReactNoop.getChildren()).toEqual([
@@ -2196,12 +2198,12 @@ describe('ReactSuspenseWithNoopRenderer', () => {
// Suspended
expect(ReactNoop.getChildren()).toEqual([span('Hi!'), span('A')]);
- Scheduler.advanceTime(1800);
+ Scheduler.unstable_advanceTime(1800);
await advanceTimers(1800);
expect(Scheduler).toFlushAndYield([]);
// We should still be suspended here because this loading state should be avoided.
expect(ReactNoop.getChildren()).toEqual([span('Hi!'), span('A')]);
- Scheduler.advanceTime(1500);
+ Scheduler.unstable_advanceTime(1500);
await advanceTimers(1500);
expect(Scheduler).toHaveYielded(['Promise resolved [B]']);
expect(ReactNoop.getChildren()).toEqual([
@@ -2257,7 +2259,7 @@ describe('ReactSuspenseWithNoopRenderer', () => {
transitionToPage('B');
// Rendering B is quick and we didn't have enough
// time to show the loading indicator.
- Scheduler.advanceTime(200);
+ Scheduler.unstable_advanceTime(200);
await advanceTimers(200);
expect(Scheduler).toFlushAndYield(['A', 'L', 'B']);
expect(ReactNoop.getChildren()).toEqual([span('B')]);
@@ -2267,14 +2269,14 @@ describe('ReactSuspenseWithNoopRenderer', () => {
transitionToPage('C');
// Rendering C is a bit slower so we've already showed
// the loading indicator.
- Scheduler.advanceTime(600);
+ Scheduler.unstable_advanceTime(600);
await advanceTimers(600);
expect(Scheduler).toFlushAndYield(['B', 'L', 'C']);
// We're technically done now but we haven't shown the
// loading indicator for long enough yet so we'll suspend
// while we keep it on the screen a bit longer.
expect(ReactNoop.getChildren()).toEqual([span('B'), span('L')]);
- Scheduler.advanceTime(400);
+ Scheduler.unstable_advanceTime(400);
await advanceTimers(400);
expect(ReactNoop.getChildren()).toEqual([span('C')]);
});
@@ -2283,7 +2285,7 @@ describe('ReactSuspenseWithNoopRenderer', () => {
transitionToPage('D');
// Rendering D is very slow so we've already showed
// the loading indicator.
- Scheduler.advanceTime(1000);
+ Scheduler.unstable_advanceTime(1000);
await advanceTimers(1000);
expect(Scheduler).toFlushAndYield(['C', 'L', 'D']);
// However, since we exceeded the minimum time to show
@@ -2309,7 +2311,7 @@ describe('ReactSuspenseWithNoopRenderer', () => {
// Resolve initial render
await ReactNoop.act(async () => {
- Scheduler.advanceTime(2000);
+ Scheduler.unstable_advanceTime(2000);
await advanceTimers(2000);
});
expect(Scheduler).toHaveYielded([
diff --git a/packages/react-refresh/src/__tests__/ReactFresh-test.js b/packages/react-refresh/src/__tests__/ReactFresh-test.js
index 9bd2d12f56..1506c70913 100644
--- a/packages/react-refresh/src/__tests__/ReactFresh-test.js
+++ b/packages/react-refresh/src/__tests__/ReactFresh-test.js
@@ -2355,7 +2355,7 @@ describe('ReactFresh', () => {
const AppV1 = prepare(() => {
function Hello() {
React.useLayoutEffect(() => {
- Scheduler.yieldValue('Hello#layout');
+ Scheduler.unstable_yieldValue('Hello#layout');
});
const [val, setVal] = React.useState(0);
return (
@@ -2368,7 +2368,7 @@ describe('ReactFresh', () => {
return function App({offscreen}) {
React.useLayoutEffect(() => {
- Scheduler.yieldValue('App#layout');
+ Scheduler.unstable_yieldValue('App#layout');
});
return (
@@ -2389,7 +2389,7 @@ describe('ReactFresh', () => {
patch(() => {
function Hello() {
React.useLayoutEffect(() => {
- Scheduler.yieldValue('Hello#layout');
+ Scheduler.unstable_yieldValue('Hello#layout');
});
const [val, setVal] = React.useState(0);
return (
@@ -2423,7 +2423,7 @@ describe('ReactFresh', () => {
patch(() => {
function Hello() {
React.useLayoutEffect(() => {
- Scheduler.yieldValue('Hello#layout');
+ Scheduler.unstable_yieldValue('Hello#layout');
});
const [val, setVal] = React.useState(0);
return (
diff --git a/packages/react-test-renderer/src/ReactTestRendererAct.js b/packages/react-test-renderer/src/ReactTestRendererAct.js
index ae5eba265b..1e47e33583 100644
--- a/packages/react-test-renderer/src/ReactTestRendererAct.js
+++ b/packages/react-test-renderer/src/ReactTestRendererAct.js
@@ -26,7 +26,7 @@ const {ReactCurrentActingRendererSigil} = ReactSharedInternals;
let hasWarnedAboutMissingMockScheduler = false;
const flushWork =
- Scheduler.unstable_flushWithoutYielding ||
+ Scheduler.unstable_flushAllWithoutAsserting ||
function() {
if (warnAboutMissingMockScheduler === true) {
if (hasWarnedAboutMissingMockScheduler === false) {
diff --git a/packages/react-test-renderer/src/__tests__/ReactTestRenderer-test.js b/packages/react-test-renderer/src/__tests__/ReactTestRenderer-test.js
index 50de254aa3..1a563687ec 100644
--- a/packages/react-test-renderer/src/__tests__/ReactTestRenderer-test.js
+++ b/packages/react-test-renderer/src/__tests__/ReactTestRenderer-test.js
@@ -72,7 +72,7 @@ describe('ReactTestRenderer', () => {
const root = ReactTestRenderer.create(
);
PendingResources.initial('initial');
await Promise.resolve();
- Scheduler.flushAll();
+ Scheduler.unstable_flushAll();
expect(root.toJSON()).toEqual('initial');
root.update(
);
@@ -80,7 +80,7 @@ describe('ReactTestRenderer', () => {
PendingResources.dynamic('dynamic');
await Promise.resolve();
- Scheduler.flushAll();
+ Scheduler.unstable_flushAll();
expect(root.toJSON()).toEqual('dynamic');
done();
@@ -100,7 +100,7 @@ describe('ReactTestRenderer', () => {
const root = ReactTestRenderer.create(
);
PendingResources.initial('initial');
await Promise.resolve();
- Scheduler.flushAll();
+ Scheduler.unstable_flushAll();
expect(root.toJSON().children).toEqual(['initial']);
root.update(
);
@@ -108,7 +108,7 @@ describe('ReactTestRenderer', () => {
PendingResources.dynamic('dynamic');
await Promise.resolve();
- Scheduler.flushAll();
+ Scheduler.unstable_flushAll();
expect(root.toJSON().children).toEqual(['dynamic']);
done();
diff --git a/packages/react-test-renderer/src/__tests__/ReactTestRendererAct-test.js b/packages/react-test-renderer/src/__tests__/ReactTestRendererAct-test.js
index 9390c4ccfc..de86f4f7c1 100644
--- a/packages/react-test-renderer/src/__tests__/ReactTestRendererAct-test.js
+++ b/packages/react-test-renderer/src/__tests__/ReactTestRendererAct-test.js
@@ -92,9 +92,9 @@ describe('ReactTestRenderer.act()', () => {
// This component will keep updating itself until step === 3
const [step, proceed] = useReducer(s => (s === 3 ? 3 : s + 1), 1);
useEffect(() => {
- Scheduler.yieldValue('Effect');
+ Scheduler.unstable_yieldValue('Effect');
alreadyResolvedPromise.then(() => {
- Scheduler.yieldValue('Microtask');
+ Scheduler.unstable_yieldValue('Microtask');
proceed();
});
});
diff --git a/packages/react-test-renderer/src/__tests__/ReactTestRendererAsync-test.js b/packages/react-test-renderer/src/__tests__/ReactTestRendererAsync-test.js
index b88fcf89b2..bd66d6cd25 100644
--- a/packages/react-test-renderer/src/__tests__/ReactTestRendererAsync-test.js
+++ b/packages/react-test-renderer/src/__tests__/ReactTestRendererAsync-test.js
@@ -48,7 +48,7 @@ describe('ReactTestRendererAsync', () => {
it('flushAll returns array of yielded values', () => {
function Child(props) {
- Scheduler.yieldValue(props.children);
+ Scheduler.unstable_yieldValue(props.children);
return props.children;
}
function Parent(props) {
@@ -74,7 +74,7 @@ describe('ReactTestRendererAsync', () => {
it('flushThrough flushes until the expected values is yielded', () => {
function Child(props) {
- Scheduler.yieldValue(props.children);
+ Scheduler.unstable_yieldValue(props.children);
return props.children;
}
function Parent(props) {
@@ -102,7 +102,7 @@ describe('ReactTestRendererAsync', () => {
it('supports high priority interruptions', () => {
function Child(props) {
- Scheduler.yieldValue(props.children);
+ Scheduler.unstable_yieldValue(props.children);
return props.children;
}
@@ -143,7 +143,7 @@ describe('ReactTestRendererAsync', () => {
describe('Jest matchers', () => {
it('toFlushAndYieldThrough', () => {
const Yield = ({id}) => {
- Scheduler.yieldValue(id);
+ Scheduler.unstable_yieldValue(id);
return id;
};
@@ -165,7 +165,7 @@ describe('ReactTestRendererAsync', () => {
it('toFlushAndYield', () => {
const Yield = ({id}) => {
- Scheduler.yieldValue(id);
+ Scheduler.unstable_yieldValue(id);
return id;
};
@@ -199,7 +199,7 @@ describe('ReactTestRendererAsync', () => {
it('toFlushAndThrow', () => {
const Yield = ({id}) => {
- Scheduler.yieldValue(id);
+ Scheduler.unstable_yieldValue(id);
return id;
};
@@ -238,7 +238,7 @@ describe('ReactTestRendererAsync', () => {
it('toHaveYielded', () => {
const Yield = ({id}) => {
- Scheduler.yieldValue(id);
+ Scheduler.unstable_yieldValue(id);
return id;
};
@@ -262,7 +262,7 @@ describe('ReactTestRendererAsync', () => {
ReactTestRenderer.create(
, {
unstable_isConcurrent: true,
});
- Scheduler.yieldValue('Something');
+ Scheduler.unstable_yieldValue('Something');
expect(() => expect(Scheduler).toFlushWithoutYielding()).toThrow(
'Log of yielded values is not empty.',
);
diff --git a/packages/react/src/__tests__/ReactDOMTracing-test.internal.js b/packages/react/src/__tests__/ReactDOMTracing-test.internal.js
index 458779baa2..f41394b713 100644
--- a/packages/react/src/__tests__/ReactDOMTracing-test.internal.js
+++ b/packages/react/src/__tests__/ReactDOMTracing-test.internal.js
@@ -69,13 +69,13 @@ describe('ReactDOMTracing', () => {
it('traces interaction through hidden subtree', () => {
const Child = () => {
const [didMount, setDidMount] = React.useState(false);
- Scheduler.yieldValue('Child');
+ Scheduler.unstable_yieldValue('Child');
React.useEffect(
() => {
if (didMount) {
- Scheduler.yieldValue('Child:update');
+ Scheduler.unstable_yieldValue('Child:update');
} else {
- Scheduler.yieldValue('Child:mount');
+ Scheduler.unstable_yieldValue('Child:mount');
setDidMount(true);
}
},
@@ -85,9 +85,9 @@ describe('ReactDOMTracing', () => {
};
const App = () => {
- Scheduler.yieldValue('App');
+ Scheduler.unstable_yieldValue('App');
React.useEffect(() => {
- Scheduler.yieldValue('App:mount');
+ Scheduler.unstable_yieldValue('App:mount');
}, []);
return (
@@ -142,17 +142,17 @@ describe('ReactDOMTracing', () => {
it('traces interaction through hidden subtree when there is other pending traced work', () => {
const Child = () => {
- Scheduler.yieldValue('Child');
+ Scheduler.unstable_yieldValue('Child');
return
;
};
let wrapped = null;
const App = () => {
- Scheduler.yieldValue('App');
+ Scheduler.unstable_yieldValue('App');
React.useEffect(() => {
wrapped = SchedulerTracing.unstable_wrap(() => {});
- Scheduler.yieldValue('App:mount');
+ Scheduler.unstable_yieldValue('App:mount');
}, []);
return (
@@ -210,13 +210,13 @@ describe('ReactDOMTracing', () => {
it('traces interaction through hidden subtree that schedules more idle/never work', () => {
const Child = () => {
const [didMount, setDidMount] = React.useState(false);
- Scheduler.yieldValue('Child');
+ Scheduler.unstable_yieldValue('Child');
React.useLayoutEffect(
() => {
if (didMount) {
- Scheduler.yieldValue('Child:update');
+ Scheduler.unstable_yieldValue('Child:update');
} else {
- Scheduler.yieldValue('Child:mount');
+ Scheduler.unstable_yieldValue('Child:mount');
Scheduler.unstable_runWithPriority(
Scheduler.unstable_IdlePriority,
() => setDidMount(true),
@@ -229,9 +229,9 @@ describe('ReactDOMTracing', () => {
};
const App = () => {
- Scheduler.yieldValue('App');
+ Scheduler.unstable_yieldValue('App');
React.useEffect(() => {
- Scheduler.yieldValue('App:mount');
+ Scheduler.unstable_yieldValue('App:mount');
}, []);
return (
@@ -289,14 +289,14 @@ describe('ReactDOMTracing', () => {
it('does not continue interactions across pre-existing idle work', () => {
const Child = () => {
- Scheduler.yieldValue('Child');
+ Scheduler.unstable_yieldValue('Child');
return
;
};
let update = null;
const WithHiddenWork = () => {
- Scheduler.yieldValue('WithHiddenWork');
+ Scheduler.unstable_yieldValue('WithHiddenWork');
return (
@@ -305,9 +305,9 @@ describe('ReactDOMTracing', () => {
};
const Updater = () => {
- Scheduler.yieldValue('Updater');
+ Scheduler.unstable_yieldValue('Updater');
React.useEffect(() => {
- Scheduler.yieldValue('Updater:effect');
+ Scheduler.unstable_yieldValue('Updater:effect');
});
const setCount = React.useState(0)[1];
@@ -319,9 +319,9 @@ describe('ReactDOMTracing', () => {
};
const App = () => {
- Scheduler.yieldValue('App');
+ Scheduler.unstable_yieldValue('App');
React.useEffect(() => {
- Scheduler.yieldValue('App:effect');
+ Scheduler.unstable_yieldValue('App:effect');
});
return (
@@ -389,7 +389,7 @@ describe('ReactDOMTracing', () => {
it('should properly trace interactions when there is work of interleaved priorities', () => {
const Child = () => {
- Scheduler.yieldValue('Child');
+ Scheduler.unstable_yieldValue('Child');
return
;
};
@@ -399,9 +399,9 @@ describe('ReactDOMTracing', () => {
const MaybeHiddenWork = () => {
const [flag, setFlag] = React.useState(false);
scheduleUpdateWithHidden = () => setFlag(true);
- Scheduler.yieldValue('MaybeHiddenWork');
+ Scheduler.unstable_yieldValue('MaybeHiddenWork');
React.useEffect(() => {
- Scheduler.yieldValue('MaybeHiddenWork:effect');
+ Scheduler.unstable_yieldValue('MaybeHiddenWork:effect');
});
return flag ? (
@@ -411,9 +411,9 @@ describe('ReactDOMTracing', () => {
};
const Updater = () => {
- Scheduler.yieldValue('Updater');
+ Scheduler.unstable_yieldValue('Updater');
React.useEffect(() => {
- Scheduler.yieldValue('Updater:effect');
+ Scheduler.unstable_yieldValue('Updater:effect');
});
const setCount = React.useState(0)[1];
@@ -423,9 +423,9 @@ describe('ReactDOMTracing', () => {
};
const App = () => {
- Scheduler.yieldValue('App');
+ Scheduler.unstable_yieldValue('App');
React.useEffect(() => {
- Scheduler.yieldValue('App:effect');
+ Scheduler.unstable_yieldValue('App:effect');
});
return (
@@ -512,9 +512,9 @@ describe('ReactDOMTracing', () => {
const SuspenseList = React.unstable_SuspenseList;
const Suspense = React.Suspense;
function Text({text}) {
- Scheduler.yieldValue(text);
+ Scheduler.unstable_yieldValue(text);
React.useEffect(() => {
- Scheduler.yieldValue('Commit ' + text);
+ Scheduler.unstable_yieldValue('Commit ' + text);
});
return
{text};
}
@@ -548,12 +548,12 @@ describe('ReactDOMTracing', () => {
expect(Scheduler).toFlushAndYieldThrough(['A']);
- Scheduler.advanceTime(300);
+ Scheduler.unstable_advanceTime(300);
jest.advanceTimersByTime(300);
expect(Scheduler).toFlushAndYieldThrough(['B']);
- Scheduler.advanceTime(300);
+ Scheduler.unstable_advanceTime(300);
jest.advanceTimersByTime(300);
// Time has now elapsed for so long that we're just going to give up
@@ -625,7 +625,7 @@ describe('ReactDOMTracing', () => {
root.render(
);
});
- Scheduler.flushAll();
+ Scheduler.unstable_flushAll();
jest.runAllTimers();
expect(ref.current).not.toBe(null);
@@ -685,7 +685,7 @@ describe('ReactDOMTracing', () => {
root.render(
);
});
- Scheduler.flushAll();
+ Scheduler.unstable_flushAll();
jest.runAllTimers();
expect(ref.current).toBe(null);
@@ -699,7 +699,7 @@ describe('ReactDOMTracing', () => {
suspend = false;
resolve();
await promise;
- Scheduler.flushAll();
+ Scheduler.unstable_flushAll();
jest.runAllTimers();
expect(ref.current).not.toBe(null);
diff --git a/packages/react/src/__tests__/ReactProfiler-test.internal.js b/packages/react/src/__tests__/ReactProfiler-test.internal.js
index f96b5bb96b..9193f8442e 100644
--- a/packages/react/src/__tests__/ReactProfiler-test.internal.js
+++ b/packages/react/src/__tests__/ReactProfiler-test.internal.js
@@ -59,7 +59,7 @@ function loadModules({
}
render() {
// Simulate time passing when this component is rendered
- Scheduler.advanceTime(this.props.byAmount);
+ Scheduler.unstable_advanceTime(this.props.byAmount);
return this.props.children || null;
}
};
@@ -69,7 +69,7 @@ function loadModules({
TextResource = ReactCache.unstable_createResource(([text, ms = 0]) => {
resourcePromise = new Promise((resolve, reject) =>
setTimeout(() => {
- Scheduler.yieldValue(`Promise resolved [${text}]`);
+ Scheduler.unstable_yieldValue(`Promise resolved [${text}]`);
resolve(text);
}, ms),
);
@@ -79,20 +79,20 @@ function loadModules({
AsyncText = ({ms, text}) => {
try {
TextResource.read([text, ms]);
- Scheduler.yieldValue(`AsyncText [${text}]`);
+ Scheduler.unstable_yieldValue(`AsyncText [${text}]`);
return text;
} catch (promise) {
if (typeof promise.then === 'function') {
- Scheduler.yieldValue(`Suspend [${text}]`);
+ Scheduler.unstable_yieldValue(`Suspend [${text}]`);
} else {
- Scheduler.yieldValue(`Error [${text}]`);
+ Scheduler.unstable_yieldValue(`Error [${text}]`);
}
throw promise;
}
};
Text = ({text}) => {
- Scheduler.yieldValue(`Text [${text}]`);
+ Scheduler.unstable_yieldValue(`Text [${text}]`);
return text;
};
}
@@ -237,7 +237,7 @@ describe('Profiler', () => {
const callback = jest.fn();
const Yield = ({value}) => {
- Scheduler.yieldValue(value);
+ Scheduler.unstable_yieldValue(value);
return null;
};
@@ -268,7 +268,7 @@ describe('Profiler', () => {
return {
...ActualScheduler,
unstable_now: function mockUnstableNow() {
- ActualScheduler.yieldValue('read current time');
+ ActualScheduler.unstable_yieldValue('read current time');
return ActualScheduler.unstable_now();
},
};
@@ -309,7 +309,7 @@ describe('Profiler', () => {
it('logs render times for both mount and update', () => {
const callback = jest.fn();
- Scheduler.advanceTime(5); // 0 -> 5
+ Scheduler.unstable_advanceTime(5); // 0 -> 5
const renderer = ReactTestRenderer.create(
@@ -332,7 +332,7 @@ describe('Profiler', () => {
callback.mockReset();
- Scheduler.advanceTime(20); // 15 -> 35
+ Scheduler.unstable_advanceTime(20); // 15 -> 35
renderer.update(
@@ -355,7 +355,7 @@ describe('Profiler', () => {
callback.mockReset();
- Scheduler.advanceTime(20); // 45 -> 65
+ Scheduler.unstable_advanceTime(20); // 45 -> 65
renderer.update(
@@ -380,7 +380,7 @@ describe('Profiler', () => {
it('includes render times of nested Profilers in their parent times', () => {
const callback = jest.fn();
- Scheduler.advanceTime(5); // 0 -> 5
+ Scheduler.unstable_advanceTime(5); // 0 -> 5
ReactTestRenderer.create(
@@ -415,7 +415,7 @@ describe('Profiler', () => {
it('traces sibling Profilers separately', () => {
const callback = jest.fn();
- Scheduler.advanceTime(5); // 0 -> 5
+ Scheduler.unstable_advanceTime(5); // 0 -> 5
ReactTestRenderer.create(
@@ -448,7 +448,7 @@ describe('Profiler', () => {
it('does not include time spent outside of profile root', () => {
const callback = jest.fn();
- Scheduler.advanceTime(5); // 0 -> 5
+ Scheduler.unstable_advanceTime(5); // 0 -> 5
ReactTestRenderer.create(
@@ -523,7 +523,7 @@ describe('Profiler', () => {
it('decreases actual time but not base time when sCU prevents an update', () => {
const callback = jest.fn();
- Scheduler.advanceTime(5); // 0 -> 5
+ Scheduler.unstable_advanceTime(5); // 0 -> 5
const renderer = ReactTestRenderer.create(
@@ -535,7 +535,7 @@ describe('Profiler', () => {
expect(callback).toHaveBeenCalledTimes(1);
- Scheduler.advanceTime(30); // 28 -> 58
+ Scheduler.unstable_advanceTime(30); // 28 -> 58
renderer.update(
@@ -566,22 +566,22 @@ describe('Profiler', () => {
class WithLifecycles extends React.Component {
state = {};
static getDerivedStateFromProps() {
- Scheduler.advanceTime(3);
+ Scheduler.unstable_advanceTime(3);
return null;
}
shouldComponentUpdate() {
- Scheduler.advanceTime(7);
+ Scheduler.unstable_advanceTime(7);
return true;
}
render() {
- Scheduler.advanceTime(5);
+ Scheduler.unstable_advanceTime(5);
return null;
}
}
const callback = jest.fn();
- Scheduler.advanceTime(5); // 0 -> 5
+ Scheduler.unstable_advanceTime(5); // 0 -> 5
const renderer = ReactTestRenderer.create(
@@ -589,7 +589,7 @@ describe('Profiler', () => {
,
);
- Scheduler.advanceTime(15); // 13 -> 28
+ Scheduler.unstable_advanceTime(15); // 13 -> 28
renderer.update(
@@ -619,12 +619,12 @@ describe('Profiler', () => {
const callback = jest.fn();
const Yield = ({renderTime}) => {
- Scheduler.advanceTime(renderTime);
- Scheduler.yieldValue('Yield:' + renderTime);
+ Scheduler.unstable_advanceTime(renderTime);
+ Scheduler.unstable_yieldValue('Yield:' + renderTime);
return null;
};
- Scheduler.advanceTime(5); // 0 -> 5
+ Scheduler.unstable_advanceTime(5); // 0 -> 5
// Render partially, but run out of time before completing.
ReactTestRenderer.create(
@@ -653,12 +653,12 @@ describe('Profiler', () => {
const callback = jest.fn();
const Yield = ({renderTime}) => {
- Scheduler.advanceTime(renderTime);
- Scheduler.yieldValue('Yield:' + renderTime);
+ Scheduler.unstable_advanceTime(renderTime);
+ Scheduler.unstable_yieldValue('Yield:' + renderTime);
return null;
};
- Scheduler.advanceTime(5); // 0 -> 5
+ Scheduler.unstable_advanceTime(5); // 0 -> 5
// Render partially, but don't finish.
// This partial render should take 5ms of simulated time.
@@ -676,7 +676,7 @@ describe('Profiler', () => {
expect(callback).toHaveBeenCalledTimes(0);
// Simulate time moving forward while frame is paused.
- Scheduler.advanceTime(50); // 10 -> 60
+ Scheduler.unstable_advanceTime(50); // 10 -> 60
// Flush the remaining work,
// Which should take an additional 10ms of simulated time.
@@ -703,12 +703,12 @@ describe('Profiler', () => {
const callback = jest.fn();
const Yield = ({renderTime}) => {
- Scheduler.advanceTime(renderTime);
- Scheduler.yieldValue('Yield:' + renderTime);
+ Scheduler.unstable_advanceTime(renderTime);
+ Scheduler.unstable_yieldValue('Yield:' + renderTime);
return null;
};
- Scheduler.advanceTime(5); // 0 -> 5
+ Scheduler.unstable_advanceTime(5); // 0 -> 5
// Render a partially update, but don't finish.
// This partial render should take 10ms of simulated time.
@@ -723,7 +723,7 @@ describe('Profiler', () => {
expect(callback).toHaveBeenCalledTimes(0);
// Simulate time moving forward while frame is paused.
- Scheduler.advanceTime(100); // 15 -> 115
+ Scheduler.unstable_advanceTime(100); // 15 -> 115
// Interrupt with higher priority work.
// The interrupted work simulates an additional 5ms of time.
@@ -756,12 +756,12 @@ describe('Profiler', () => {
const callback = jest.fn();
const Yield = ({renderTime}) => {
- Scheduler.advanceTime(renderTime);
- Scheduler.yieldValue('Yield:' + renderTime);
+ Scheduler.unstable_advanceTime(renderTime);
+ Scheduler.unstable_yieldValue('Yield:' + renderTime);
return null;
};
- Scheduler.advanceTime(5); // 0 -> 5
+ Scheduler.unstable_advanceTime(5); // 0 -> 5
const renderer = ReactTestRenderer.create(
@@ -783,7 +783,7 @@ describe('Profiler', () => {
callback.mockReset();
- Scheduler.advanceTime(30); // 26 -> 56
+ Scheduler.unstable_advanceTime(30); // 26 -> 56
// Render a partially update, but don't finish.
// This partial render should take 3ms of simulated time.
@@ -798,14 +798,14 @@ describe('Profiler', () => {
expect(callback).toHaveBeenCalledTimes(0);
// Simulate time moving forward while frame is paused.
- Scheduler.advanceTime(100); // 59 -> 159
+ Scheduler.unstable_advanceTime(100); // 59 -> 159
// Render another 5ms of simulated time.
expect(Scheduler).toFlushAndYieldThrough(['Yield:5']);
expect(callback).toHaveBeenCalledTimes(0);
// Simulate time moving forward while frame is paused.
- Scheduler.advanceTime(100); // 164 -> 264
+ Scheduler.unstable_advanceTime(100); // 164 -> 264
// Interrupt with higher priority work.
// The interrupted work simulates an additional 11ms of time.
@@ -837,8 +837,8 @@ describe('Profiler', () => {
const callback = jest.fn();
const Yield = ({renderTime}) => {
- Scheduler.advanceTime(renderTime);
- Scheduler.yieldValue('Yield:' + renderTime);
+ Scheduler.unstable_advanceTime(renderTime);
+ Scheduler.unstable_yieldValue('Yield:' + renderTime);
return null;
};
@@ -847,8 +847,10 @@ describe('Profiler', () => {
state = {renderTime: 1};
render() {
first = this;
- Scheduler.advanceTime(this.state.renderTime);
- Scheduler.yieldValue('FirstComponent:' + this.state.renderTime);
+ Scheduler.unstable_advanceTime(this.state.renderTime);
+ Scheduler.unstable_yieldValue(
+ 'FirstComponent:' + this.state.renderTime,
+ );
return ;
}
}
@@ -857,13 +859,15 @@ describe('Profiler', () => {
state = {renderTime: 2};
render() {
second = this;
- Scheduler.advanceTime(this.state.renderTime);
- Scheduler.yieldValue('SecondComponent:' + this.state.renderTime);
+ Scheduler.unstable_advanceTime(this.state.renderTime);
+ Scheduler.unstable_yieldValue(
+ 'SecondComponent:' + this.state.renderTime,
+ );
return ;
}
}
- Scheduler.advanceTime(5); // 0 -> 5
+ Scheduler.unstable_advanceTime(5); // 0 -> 5
const renderer = ReactTestRenderer.create(
@@ -891,7 +895,7 @@ describe('Profiler', () => {
callback.mockClear();
- Scheduler.advanceTime(100); // 19 -> 119
+ Scheduler.unstable_advanceTime(100); // 19 -> 119
// Render a partially update, but don't finish.
// This partial render will take 10ms of actual render time.
@@ -900,7 +904,7 @@ describe('Profiler', () => {
expect(callback).toHaveBeenCalledTimes(0);
// Simulate time moving forward while frame is paused.
- Scheduler.advanceTime(100); // 129 -> 229
+ Scheduler.unstable_advanceTime(100); // 129 -> 229
// Interrupt with higher priority work.
// This simulates a total of 37ms of actual render time.
@@ -921,7 +925,7 @@ describe('Profiler', () => {
callback.mockClear();
// Simulate time moving forward while frame is paused.
- Scheduler.advanceTime(100); // 266 -> 366
+ Scheduler.unstable_advanceTime(100); // 266 -> 366
// Resume the original low priority update, with rebased state.
// This simulates a total of 14ms of actual render time,
@@ -957,7 +961,7 @@ describe('Profiler', () => {
const callback = jest.fn();
const ThrowsError = () => {
- Scheduler.advanceTime(3);
+ Scheduler.unstable_advanceTime(3);
throw Error('expected error');
};
@@ -967,7 +971,7 @@ describe('Profiler', () => {
this.setState({error});
}
render() {
- Scheduler.advanceTime(2);
+ Scheduler.unstable_advanceTime(2);
return this.state.error === null ? (
this.props.children
) : (
@@ -976,7 +980,7 @@ describe('Profiler', () => {
}
}
- Scheduler.advanceTime(5); // 0 -> 5
+ Scheduler.unstable_advanceTime(5); // 0 -> 5
ReactTestRenderer.create(
@@ -1036,7 +1040,7 @@ describe('Profiler', () => {
const callback = jest.fn();
const ThrowsError = () => {
- Scheduler.advanceTime(10);
+ Scheduler.unstable_advanceTime(10);
throw Error('expected error');
};
@@ -1046,7 +1050,7 @@ describe('Profiler', () => {
return {error};
}
render() {
- Scheduler.advanceTime(2);
+ Scheduler.unstable_advanceTime(2);
return this.state.error === null ? (
this.props.children
) : (
@@ -1055,7 +1059,7 @@ describe('Profiler', () => {
}
}
- Scheduler.advanceTime(5); // 0 -> 5
+ Scheduler.unstable_advanceTime(5); // 0 -> 5
ReactTestRenderer.create(
@@ -1135,7 +1139,7 @@ describe('Profiler', () => {
it('reflects the most recently rendered id value', () => {
const callback = jest.fn();
- Scheduler.advanceTime(5); // 0 -> 5
+ Scheduler.unstable_advanceTime(5); // 0 -> 5
const renderer = ReactTestRenderer.create(
@@ -1145,7 +1149,7 @@ describe('Profiler', () => {
expect(callback).toHaveBeenCalledTimes(1);
- Scheduler.advanceTime(20); // 7 -> 27
+ Scheduler.unstable_advanceTime(20); // 7 -> 27
renderer.update(
@@ -1183,11 +1187,11 @@ describe('Profiler', () => {
class ClassComponent extends React.Component {
componentDidMount() {
- Scheduler.advanceTime(5);
+ Scheduler.unstable_advanceTime(5);
classComponentMounted = true;
}
render() {
- Scheduler.advanceTime(2);
+ Scheduler.unstable_advanceTime(2);
return null;
}
}
@@ -1209,14 +1213,16 @@ describe('Profiler', () => {
loadModules({useNoopRenderer: true});
const Child = ({duration, id}) => {
- Scheduler.advanceTime(duration);
- Scheduler.yieldValue(`Child:render:${id}`);
+ Scheduler.unstable_advanceTime(duration);
+ Scheduler.unstable_yieldValue(`Child:render:${id}`);
return null;
};
class Parent extends React.Component {
componentDidMount() {
- Scheduler.yieldValue(`Parent:componentDidMount:${this.props.id}`);
+ Scheduler.unstable_yieldValue(
+ `Parent:componentDidMount:${this.props.id}`,
+ );
}
render() {
const {duration, id} = this.props;
@@ -1229,7 +1235,7 @@ describe('Profiler', () => {
}
}
- Scheduler.advanceTime(50);
+ Scheduler.unstable_advanceTime(50);
ReactNoop.renderToRootWithID(, 'one');
@@ -1242,13 +1248,13 @@ describe('Profiler', () => {
expect(ReactNoop.getRoot('one').current.actualDuration).toBe(0);
- Scheduler.advanceTime(100);
+ Scheduler.unstable_advanceTime(100);
// Process some async work, but yield before committing it.
ReactNoop.renderToRootWithID(, 'two');
expect(Scheduler).toFlushAndYieldThrough(['Child:render:two']);
- Scheduler.advanceTime(150);
+ Scheduler.unstable_advanceTime(150);
// Commit the previously paused, batched work.
commitFirstRender(['Parent:componentDidMount:one']);
@@ -1256,7 +1262,7 @@ describe('Profiler', () => {
expect(ReactNoop.getRoot('one').current.actualDuration).toBe(6);
expect(ReactNoop.getRoot('two').current.actualDuration).toBe(0);
- Scheduler.advanceTime(200);
+ Scheduler.unstable_advanceTime(200);
expect(Scheduler).toFlushAndYield([
'Child:render:two',
@@ -1333,7 +1339,7 @@ describe('Profiler', () => {
describe('error handling', () => {
it('should cover errors thrown in onWorkScheduled', () => {
function Component({children}) {
- Scheduler.yieldValue('Component:' + children);
+ Scheduler.unstable_yieldValue('Component:' + children);
return children;
}
@@ -1368,7 +1374,7 @@ describe('Profiler', () => {
it('should cover errors thrown in onWorkStarted', () => {
function Component({children}) {
- Scheduler.yieldValue('Component:' + children);
+ Scheduler.unstable_yieldValue('Component:' + children);
return children;
}
@@ -1403,7 +1409,7 @@ describe('Profiler', () => {
it('should cover errors thrown in onWorkStopped', () => {
function Component({children}) {
- Scheduler.yieldValue('Component:' + children);
+ Scheduler.unstable_yieldValue('Component:' + children);
return children;
}
@@ -1438,7 +1444,7 @@ describe('Profiler', () => {
it('should cover errors thrown in onInteractionScheduledWorkCompleted', () => {
function Component({children}) {
- Scheduler.yieldValue('Component:' + children);
+ Scheduler.unstable_yieldValue('Component:' + children);
return children;
}
@@ -1513,8 +1519,8 @@ describe('Profiler', () => {
let instance = null;
const Yield = ({duration = 10, value}) => {
- Scheduler.advanceTime(duration);
- Scheduler.yieldValue(value);
+ Scheduler.unstable_advanceTime(duration);
+ Scheduler.unstable_yieldValue(value);
return null;
};
@@ -1534,7 +1540,7 @@ describe('Profiler', () => {
}
}
- Scheduler.advanceTime(1);
+ Scheduler.unstable_advanceTime(1);
const interactionCreation = {
id: 0,
@@ -1608,7 +1614,7 @@ describe('Profiler', () => {
onWorkStarted.mockClear();
onWorkStopped.mockClear();
- Scheduler.advanceTime(3);
+ Scheduler.unstable_advanceTime(3);
let didRunCallback = false;
@@ -1684,7 +1690,7 @@ describe('Profiler', () => {
onWorkStarted.mockClear();
onWorkStopped.mockClear();
- Scheduler.advanceTime(17);
+ Scheduler.unstable_advanceTime(17);
// Verify that updating state again does not re-log our interaction.
instance.setState({count: 3});
@@ -1708,7 +1714,7 @@ describe('Profiler', () => {
onRender.mockClear();
- Scheduler.advanceTime(3);
+ Scheduler.unstable_advanceTime(3);
// Verify that root updates are also associated with traced events.
const interactionTwo = {
@@ -1781,7 +1787,7 @@ describe('Profiler', () => {
state = {count: 0};
render() {
first = this;
- Scheduler.yieldValue('FirstComponent');
+ Scheduler.unstable_yieldValue('FirstComponent');
return null;
}
}
@@ -1790,12 +1796,12 @@ describe('Profiler', () => {
state = {count: 0};
render() {
second = this;
- Scheduler.yieldValue('SecondComponent');
+ Scheduler.unstable_yieldValue('SecondComponent');
return null;
}
}
- Scheduler.advanceTime(5);
+ Scheduler.unstable_advanceTime(5);
const renderer = ReactTestRenderer.create(
@@ -1813,7 +1819,7 @@ describe('Profiler', () => {
onRender.mockClear();
- Scheduler.advanceTime(100);
+ Scheduler.unstable_advanceTime(100);
const interactionLowPri = {
id: 0,
@@ -1847,7 +1853,7 @@ describe('Profiler', () => {
).toMatchInteractions([interactionLowPri]);
expect(getWorkForReactThreads(onWorkStopped)).toHaveLength(0);
- Scheduler.advanceTime(100);
+ Scheduler.unstable_advanceTime(100);
const interactionHighPri = {
id: 1,
@@ -1898,7 +1904,7 @@ describe('Profiler', () => {
onRender.mockClear();
- Scheduler.advanceTime(100);
+ Scheduler.unstable_advanceTime(100);
// Resume the original low priority update, with rebased state.
// Verify the low priority update was retained.
@@ -1949,18 +1955,18 @@ describe('Profiler', () => {
count: 0,
};
componentDidMount() {
- Scheduler.advanceTime(10); // Advance timer to keep commits separate
+ Scheduler.unstable_advanceTime(10); // Advance timer to keep commits separate
this.setState({count: 1}); // Intentional cascading update
}
componentDidUpdate(prevProps, prevState) {
if (this.state.count === 2 && prevState.count === 1) {
- Scheduler.advanceTime(10); // Advance timer to keep commits separate
+ Scheduler.unstable_advanceTime(10); // Advance timer to keep commits separate
this.setState({count: 3}); // Intentional cascading update
}
}
render() {
instance = this;
- Scheduler.yieldValue('Example:' + this.state.count);
+ Scheduler.unstable_yieldValue('Example:' + this.state.count);
return null;
}
}
@@ -2056,7 +2062,7 @@ describe('Profiler', () => {
expect(getWorkForReactThreads(onWorkStarted)).toHaveLength(2);
expect(getWorkForReactThreads(onWorkStopped)).toHaveLength(2);
- Scheduler.advanceTime(5);
+ Scheduler.unstable_advanceTime(5);
// Flush async work (outside of traced scope)
// This will cause an intentional cascading update from did-update
@@ -2174,7 +2180,7 @@ describe('Profiler', () => {
class Child extends React.Component {
render() {
- Scheduler.yieldValue('Child:' + this.props.count);
+ Scheduler.unstable_yieldValue('Child:' + this.props.count);
return null;
}
}
@@ -2193,7 +2199,7 @@ describe('Profiler', () => {
}
}
- Scheduler.advanceTime(1);
+ Scheduler.unstable_advanceTime(1);
ReactTestRenderer.create(, {
unstable_isConcurrent: true,
@@ -2267,7 +2273,7 @@ describe('Profiler', () => {
const monkey = React.createRef();
class Monkey extends React.Component {
render() {
- Scheduler.yieldValue('Monkey');
+ Scheduler.unstable_yieldValue('Monkey');
return null;
}
}
@@ -2464,7 +2470,7 @@ describe('Profiler', () => {
},
);
- Scheduler.advanceTime(400);
+ Scheduler.unstable_advanceTime(400);
await awaitableAdvanceTimers(400);
expect(Scheduler).toFlushAndYield([
@@ -2473,7 +2479,7 @@ describe('Profiler', () => {
]);
expect(onInteractionScheduledWorkCompleted).not.toHaveBeenCalled();
- Scheduler.advanceTime(500);
+ Scheduler.unstable_advanceTime(500);
await awaitableAdvanceTimers(500);
expect(Scheduler).toHaveYielded(['Promise resolved [loaded]']);
@@ -2602,7 +2608,7 @@ describe('Profiler', () => {
).toMatchInteraction(highPriUpdateInteraction);
onInteractionScheduledWorkCompleted.mockClear();
- Scheduler.advanceTime(100);
+ Scheduler.unstable_advanceTime(100);
jest.advanceTimersByTime(100);
await originalPromise;
@@ -2662,7 +2668,7 @@ describe('Profiler', () => {
expect(onInteractionScheduledWorkCompleted).not.toHaveBeenCalled();
expect(onRender).not.toHaveBeenCalled();
- Scheduler.advanceTime(50);
+ Scheduler.unstable_advanceTime(50);
jest.advanceTimersByTime(50);
const highPriUpdateInteraction = {
@@ -2704,7 +2710,7 @@ describe('Profiler', () => {
expect(onInteractionScheduledWorkCompleted).toHaveBeenCalledTimes(0);
- Scheduler.advanceTime(50);
+ Scheduler.unstable_advanceTime(50);
jest.advanceTimersByTime(50);
await originalPromise;
expect(Scheduler).toHaveYielded(['Promise resolved [loaded]']);
diff --git a/packages/react/src/__tests__/ReactProfilerDOM-test.internal.js b/packages/react/src/__tests__/ReactProfilerDOM-test.internal.js
index 8d2bf3cf8b..ec8446b4f1 100644
--- a/packages/react/src/__tests__/ReactProfilerDOM-test.internal.js
+++ b/packages/react/src/__tests__/ReactProfilerDOM-test.internal.js
@@ -105,7 +105,7 @@ describe('ProfilerDOM', () => {
resourcePromise.then(
SchedulerTracing.unstable_wrap(() => {
jest.runAllTimers();
- Scheduler.flushAll();
+ Scheduler.unstable_flushAll();
expect(element.textContent).toBe('Text');
expect(onInteractionTraced).toHaveBeenCalledTimes(1);
@@ -133,7 +133,7 @@ describe('ProfilerDOM', () => {
}),
);
- Scheduler.flushAll();
+ Scheduler.unstable_flushAll();
});
expect(onInteractionTraced).toHaveBeenCalledTimes(1);
@@ -141,7 +141,7 @@ describe('ProfilerDOM', () => {
interaction,
);
expect(onInteractionScheduledWorkCompleted).not.toHaveBeenCalled();
- Scheduler.flushAll();
+ Scheduler.unstable_flushAll();
jest.advanceTimersByTime(500);
});
});
diff --git a/packages/react/src/__tests__/ReactProfilerDevToolsIntegration-test.internal.js b/packages/react/src/__tests__/ReactProfilerDevToolsIntegration-test.internal.js
index 14ccc16021..b3efa665d5 100644
--- a/packages/react/src/__tests__/ReactProfilerDevToolsIntegration-test.internal.js
+++ b/packages/react/src/__tests__/ReactProfilerDevToolsIntegration-test.internal.js
@@ -47,7 +47,7 @@ describe('ReactProfiler DevTools integration', () => {
}
render() {
// Simulate time passing when this component is rendered
- Scheduler.advanceTime(this.props.byAmount);
+ Scheduler.unstable_advanceTime(this.props.byAmount);
return this.props.children || null;
}
};
@@ -55,7 +55,7 @@ describe('ReactProfiler DevTools integration', () => {
it('should auto-Profile all fibers if the DevTools hook is detected', () => {
const App = ({multiplier}) => {
- Scheduler.advanceTime(2);
+ Scheduler.unstable_advanceTime(2);
return (
@@ -121,7 +121,7 @@ describe('ReactProfiler DevTools integration', () => {
});
it('should reset the fiber stack correctly after an error when profiling host roots', () => {
- Scheduler.advanceTime(20);
+ Scheduler.unstable_advanceTime(20);
const rendered = ReactTestRenderer.create(
@@ -129,7 +129,7 @@ describe('ReactProfiler DevTools integration', () => {
,
);
- Scheduler.advanceTime(20);
+ Scheduler.unstable_advanceTime(20);
expect(() => {
rendered.update(
@@ -139,7 +139,7 @@ describe('ReactProfiler DevTools integration', () => {
);
}).toThrow();
- Scheduler.advanceTime(20);
+ Scheduler.unstable_advanceTime(20);
// But this should render correctly, if the profiler's fiber stack has been reset.
rendered.update(
@@ -164,7 +164,7 @@ describe('ReactProfiler DevTools integration', () => {
const root = rendered.root._currentFiber().return;
expect(root.stateNode.memoizedInteractions).toContainNoInteractions();
- Scheduler.advanceTime(10);
+ Scheduler.unstable_advanceTime(10);
const eventTime = Scheduler.unstable_now();
diff --git a/packages/react/src/__tests__/ReactStrictMode-test.internal.js b/packages/react/src/__tests__/ReactStrictMode-test.internal.js
index c674a5b03e..d64781dc6b 100644
--- a/packages/react/src/__tests__/ReactStrictMode-test.internal.js
+++ b/packages/react/src/__tests__/ReactStrictMode-test.internal.js
@@ -348,7 +348,7 @@ describe('ReactStrictMode', () => {
unstable_isConcurrent: true,
});
root.update();
- expect(() => Scheduler.flushAll()).toWarnDev(
+ expect(() => Scheduler.unstable_flushAll()).toWarnDev(
'Unsafe lifecycle methods were found within a strict-mode tree:' +
'\n\ncomponentWillMount: Please update the following components ' +
'to use componentDidMount instead: AsyncRoot' +
@@ -363,7 +363,7 @@ describe('ReactStrictMode', () => {
// Dedupe
root.update();
- Scheduler.flushAll();
+ Scheduler.unstable_flushAll();
});
it('should coalesce warnings by lifecycle name', () => {
@@ -395,7 +395,7 @@ describe('ReactStrictMode', () => {
root.update();
expect(() => {
- expect(() => Scheduler.flushAll()).toWarnDev(
+ expect(() => Scheduler.unstable_flushAll()).toWarnDev(
'Unsafe lifecycle methods were found within a strict-mode tree:' +
'\n\ncomponentWillMount: Please update the following components ' +
'to use componentDidMount instead: AsyncRoot, Parent' +
@@ -418,7 +418,7 @@ describe('ReactStrictMode', () => {
// Dedupe
root.update();
- Scheduler.flushAll();
+ Scheduler.unstable_flushAll();
});
it('should warn about components not present during the initial render', () => {
@@ -444,7 +444,7 @@ describe('ReactStrictMode', () => {
unstable_isConcurrent: true,
});
root.update();
- expect(() => Scheduler.flushAll()).toWarnDev(
+ expect(() => Scheduler.unstable_flushAll()).toWarnDev(
'Unsafe lifecycle methods were found within a strict-mode tree:' +
'\n\ncomponentWillMount: Please update the following components ' +
'to use componentDidMount instead: Foo' +
@@ -454,7 +454,7 @@ describe('ReactStrictMode', () => {
);
root.update();
- expect(() => Scheduler.flushAll()).toWarnDev(
+ expect(() => Scheduler.unstable_flushAll()).toWarnDev(
'Unsafe lifecycle methods were found within a strict-mode tree:' +
'\n\ncomponentWillMount: Please update the following components ' +
'to use componentDidMount instead: Bar' +
@@ -465,9 +465,9 @@ describe('ReactStrictMode', () => {
// Dedupe
root.update();
- Scheduler.flushAll();
+ Scheduler.unstable_flushAll();
root.update();
- Scheduler.flushAll();
+ Scheduler.unstable_flushAll();
});
it('should also warn inside of "strict" mode trees', () => {
diff --git a/packages/react/src/__tests__/forwardRef-test.internal.js b/packages/react/src/__tests__/forwardRef-test.internal.js
index 3391e98dd1..31c8867d57 100644
--- a/packages/react/src/__tests__/forwardRef-test.internal.js
+++ b/packages/react/src/__tests__/forwardRef-test.internal.js
@@ -28,7 +28,7 @@ describe('forwardRef', () => {
it('should work without a ref to be forwarded', () => {
class Child extends React.Component {
render() {
- Scheduler.yieldValue(this.props.value);
+ Scheduler.unstable_yieldValue(this.props.value);
return null;
}
}
@@ -48,7 +48,7 @@ describe('forwardRef', () => {
it('should forward a ref for a single child', () => {
class Child extends React.Component {
render() {
- Scheduler.yieldValue(this.props.value);
+ Scheduler.unstable_yieldValue(this.props.value);
return null;
}
}
@@ -71,7 +71,7 @@ describe('forwardRef', () => {
it('should forward a ref for multiple children', () => {
class Child extends React.Component {
render() {
- Scheduler.yieldValue(this.props.value);
+ Scheduler.unstable_yieldValue(this.props.value);
return null;
}
}
@@ -103,7 +103,7 @@ describe('forwardRef', () => {
super(props);
}
render() {
- Scheduler.yieldValue(this.props.value);
+ Scheduler.unstable_yieldValue(this.props.value);
return null;
}
}
@@ -138,28 +138,28 @@ describe('forwardRef', () => {
class ErrorBoundary extends React.Component {
state = {error: null};
componentDidCatch(error) {
- Scheduler.yieldValue('ErrorBoundary.componentDidCatch');
+ Scheduler.unstable_yieldValue('ErrorBoundary.componentDidCatch');
this.setState({error});
}
render() {
if (this.state.error) {
- Scheduler.yieldValue('ErrorBoundary.render: catch');
+ Scheduler.unstable_yieldValue('ErrorBoundary.render: catch');
return null;
}
- Scheduler.yieldValue('ErrorBoundary.render: try');
+ Scheduler.unstable_yieldValue('ErrorBoundary.render: try');
return this.props.children;
}
}
class BadRender extends React.Component {
render() {
- Scheduler.yieldValue('BadRender throw');
+ Scheduler.unstable_yieldValue('BadRender throw');
throw new Error('oops!');
}
}
function Wrapper(props) {
- Scheduler.yieldValue('Wrapper');
+ Scheduler.unstable_yieldValue('Wrapper');
return ;
}
@@ -196,24 +196,24 @@ describe('forwardRef', () => {
class Inner extends React.Component {
render() {
- Scheduler.yieldValue('Inner');
+ Scheduler.unstable_yieldValue('Inner');
inst = this;
return ;
}
}
function Middle(props) {
- Scheduler.yieldValue('Middle');
+ Scheduler.unstable_yieldValue('Middle');
return ;
}
const Forward = React.forwardRef((props, ref) => {
- Scheduler.yieldValue('Forward');
+ Scheduler.unstable_yieldValue('Forward');
return ;
});
function App() {
- Scheduler.yieldValue('App');
+ Scheduler.unstable_yieldValue('App');
return ;
}
diff --git a/packages/scheduler/src/__tests__/Scheduler-test.js b/packages/scheduler/src/__tests__/Scheduler-test.js
index 4594baf5fb..db7ee4cd83 100644
--- a/packages/scheduler/src/__tests__/Scheduler-test.js
+++ b/packages/scheduler/src/__tests__/Scheduler-test.js
@@ -39,10 +39,10 @@ describe('Scheduler', () => {
});
it('flushes work incrementally', () => {
- scheduleCallback(NormalPriority, () => Scheduler.yieldValue('A'));
- scheduleCallback(NormalPriority, () => Scheduler.yieldValue('B'));
- scheduleCallback(NormalPriority, () => Scheduler.yieldValue('C'));
- scheduleCallback(NormalPriority, () => Scheduler.yieldValue('D'));
+ scheduleCallback(NormalPriority, () => Scheduler.unstable_yieldValue('A'));
+ scheduleCallback(NormalPriority, () => Scheduler.unstable_yieldValue('B'));
+ scheduleCallback(NormalPriority, () => Scheduler.unstable_yieldValue('C'));
+ scheduleCallback(NormalPriority, () => Scheduler.unstable_yieldValue('D'));
expect(Scheduler).toFlushAndYieldThrough(['A', 'B']);
expect(Scheduler).toFlushAndYieldThrough(['C']);
@@ -50,11 +50,11 @@ describe('Scheduler', () => {
});
it('cancels work', () => {
- scheduleCallback(NormalPriority, () => Scheduler.yieldValue('A'));
+ scheduleCallback(NormalPriority, () => Scheduler.unstable_yieldValue('A'));
const callbackHandleB = scheduleCallback(NormalPriority, () =>
- Scheduler.yieldValue('B'),
+ Scheduler.unstable_yieldValue('B'),
);
- scheduleCallback(NormalPriority, () => Scheduler.yieldValue('C'));
+ scheduleCallback(NormalPriority, () => Scheduler.unstable_yieldValue('C'));
cancelCallback(callbackHandleB);
@@ -66,14 +66,18 @@ describe('Scheduler', () => {
});
it('executes the highest priority callbacks first', () => {
- scheduleCallback(NormalPriority, () => Scheduler.yieldValue('A'));
- scheduleCallback(NormalPriority, () => Scheduler.yieldValue('B'));
+ scheduleCallback(NormalPriority, () => Scheduler.unstable_yieldValue('A'));
+ scheduleCallback(NormalPriority, () => Scheduler.unstable_yieldValue('B'));
// Yield before B is flushed
expect(Scheduler).toFlushAndYieldThrough(['A']);
- scheduleCallback(UserBlockingPriority, () => Scheduler.yieldValue('C'));
- scheduleCallback(UserBlockingPriority, () => Scheduler.yieldValue('D'));
+ scheduleCallback(UserBlockingPriority, () =>
+ Scheduler.unstable_yieldValue('C'),
+ );
+ scheduleCallback(UserBlockingPriority, () =>
+ Scheduler.unstable_yieldValue('D'),
+ );
// C and D should come first, because they are higher priority
expect(Scheduler).toFlushAndYield(['C', 'D', 'B']);
@@ -81,41 +85,41 @@ describe('Scheduler', () => {
it('expires work', () => {
scheduleCallback(NormalPriority, didTimeout => {
- Scheduler.advanceTime(100);
- Scheduler.yieldValue(`A (did timeout: ${didTimeout})`);
+ Scheduler.unstable_advanceTime(100);
+ Scheduler.unstable_yieldValue(`A (did timeout: ${didTimeout})`);
});
scheduleCallback(UserBlockingPriority, didTimeout => {
- Scheduler.advanceTime(100);
- Scheduler.yieldValue(`B (did timeout: ${didTimeout})`);
+ Scheduler.unstable_advanceTime(100);
+ Scheduler.unstable_yieldValue(`B (did timeout: ${didTimeout})`);
});
scheduleCallback(UserBlockingPriority, didTimeout => {
- Scheduler.advanceTime(100);
- Scheduler.yieldValue(`C (did timeout: ${didTimeout})`);
+ Scheduler.unstable_advanceTime(100);
+ Scheduler.unstable_yieldValue(`C (did timeout: ${didTimeout})`);
});
// Advance time, but not by enough to expire any work
- Scheduler.advanceTime(249);
+ Scheduler.unstable_advanceTime(249);
expect(Scheduler).toHaveYielded([]);
// Schedule a few more callbacks
scheduleCallback(NormalPriority, didTimeout => {
- Scheduler.advanceTime(100);
- Scheduler.yieldValue(`D (did timeout: ${didTimeout})`);
+ Scheduler.unstable_advanceTime(100);
+ Scheduler.unstable_yieldValue(`D (did timeout: ${didTimeout})`);
});
scheduleCallback(NormalPriority, didTimeout => {
- Scheduler.advanceTime(100);
- Scheduler.yieldValue(`E (did timeout: ${didTimeout})`);
+ Scheduler.unstable_advanceTime(100);
+ Scheduler.unstable_yieldValue(`E (did timeout: ${didTimeout})`);
});
// Advance by just a bit more to expire the user blocking callbacks
- Scheduler.advanceTime(1);
+ Scheduler.unstable_advanceTime(1);
expect(Scheduler).toHaveYielded([
'B (did timeout: true)',
'C (did timeout: true)',
]);
// Expire A
- Scheduler.advanceTime(4600);
+ Scheduler.unstable_advanceTime(4600);
expect(Scheduler).toHaveYielded(['A (did timeout: true)']);
// Flush the rest without expiring
@@ -126,23 +130,23 @@ describe('Scheduler', () => {
});
it('has a default expiration of ~5 seconds', () => {
- scheduleCallback(NormalPriority, () => Scheduler.yieldValue('A'));
+ scheduleCallback(NormalPriority, () => Scheduler.unstable_yieldValue('A'));
- Scheduler.advanceTime(4999);
+ Scheduler.unstable_advanceTime(4999);
expect(Scheduler).toHaveYielded([]);
- Scheduler.advanceTime(1);
+ Scheduler.unstable_advanceTime(1);
expect(Scheduler).toHaveYielded(['A']);
});
it('continues working on same task after yielding', () => {
scheduleCallback(NormalPriority, () => {
- Scheduler.advanceTime(100);
- Scheduler.yieldValue('A');
+ Scheduler.unstable_advanceTime(100);
+ Scheduler.unstable_yieldValue('A');
});
scheduleCallback(NormalPriority, () => {
- Scheduler.advanceTime(100);
- Scheduler.yieldValue('B');
+ Scheduler.unstable_advanceTime(100);
+ Scheduler.unstable_yieldValue('B');
});
let didYield = false;
@@ -150,8 +154,8 @@ describe('Scheduler', () => {
const C = () => {
while (tasks.length > 0) {
const [label, ms] = tasks.shift();
- Scheduler.advanceTime(ms);
- Scheduler.yieldValue(label);
+ Scheduler.unstable_advanceTime(ms);
+ Scheduler.unstable_yieldValue(label);
if (shouldYield()) {
didYield = true;
return C;
@@ -162,12 +166,12 @@ describe('Scheduler', () => {
scheduleCallback(NormalPriority, C);
scheduleCallback(NormalPriority, () => {
- Scheduler.advanceTime(100);
- Scheduler.yieldValue('D');
+ Scheduler.unstable_advanceTime(100);
+ Scheduler.unstable_yieldValue('D');
});
scheduleCallback(NormalPriority, () => {
- Scheduler.advanceTime(100);
- Scheduler.yieldValue('E');
+ Scheduler.unstable_advanceTime(100);
+ Scheduler.unstable_yieldValue('E');
});
// Flush, then yield while in the middle of C.
@@ -184,8 +188,8 @@ describe('Scheduler', () => {
const work = () => {
while (tasks.length > 0) {
const [label, ms] = tasks.shift();
- Scheduler.advanceTime(ms);
- Scheduler.yieldValue(label);
+ Scheduler.unstable_advanceTime(ms);
+ Scheduler.unstable_yieldValue(label);
if (shouldYield()) {
return work;
}
@@ -199,7 +203,7 @@ describe('Scheduler', () => {
expect(Scheduler).toFlushAndYieldThrough(['A', 'B']);
// Advance time by just a bit more. This should expire all the remaining work.
- Scheduler.advanceTime(1);
+ Scheduler.unstable_advanceTime(1);
expect(Scheduler).toHaveYielded(['C', 'D']);
});
@@ -208,8 +212,8 @@ describe('Scheduler', () => {
const work = () => {
while (tasks.length > 0) {
const [label, ms] = tasks.shift();
- Scheduler.advanceTime(ms);
- Scheduler.yieldValue(label);
+ Scheduler.unstable_advanceTime(ms);
+ Scheduler.unstable_yieldValue(label);
if (tasks.length > 0 && shouldYield()) {
return work;
}
@@ -219,8 +223,8 @@ describe('Scheduler', () => {
expect(Scheduler).toFlushAndYieldThrough(['A']);
scheduleCallback(UserBlockingPriority, () => {
- Scheduler.advanceTime(100);
- Scheduler.yieldValue('High pri');
+ Scheduler.unstable_advanceTime(100);
+ Scheduler.unstable_yieldValue('High pri');
});
expect(Scheduler).toFlushAndYield(['High pri', 'B', 'C', 'D']);
@@ -235,18 +239,18 @@ describe('Scheduler', () => {
while (tasks.length > 0) {
const task = tasks.shift();
const [label, ms] = task;
- Scheduler.advanceTime(ms);
- Scheduler.yieldValue(label);
+ Scheduler.unstable_advanceTime(ms);
+ Scheduler.unstable_yieldValue(label);
if (label === 'B') {
// Schedule high pri work from inside another callback
- Scheduler.yieldValue('Schedule high pri');
+ Scheduler.unstable_yieldValue('Schedule high pri');
scheduleCallback(UserBlockingPriority, () => {
- Scheduler.advanceTime(100);
- Scheduler.yieldValue('High pri');
+ Scheduler.unstable_advanceTime(100);
+ Scheduler.unstable_yieldValue('High pri');
});
}
if (tasks.length > 0 && shouldYield()) {
- Scheduler.yieldValue('Yield!');
+ Scheduler.unstable_yieldValue('Yield!');
return work;
}
}
@@ -268,10 +272,18 @@ describe('Scheduler', () => {
);
it('top-level immediate callbacks fire in a subsequent task', () => {
- scheduleCallback(ImmediatePriority, () => Scheduler.yieldValue('A'));
- scheduleCallback(ImmediatePriority, () => Scheduler.yieldValue('B'));
- scheduleCallback(ImmediatePriority, () => Scheduler.yieldValue('C'));
- scheduleCallback(ImmediatePriority, () => Scheduler.yieldValue('D'));
+ scheduleCallback(ImmediatePriority, () =>
+ Scheduler.unstable_yieldValue('A'),
+ );
+ scheduleCallback(ImmediatePriority, () =>
+ Scheduler.unstable_yieldValue('B'),
+ );
+ scheduleCallback(ImmediatePriority, () =>
+ Scheduler.unstable_yieldValue('C'),
+ );
+ scheduleCallback(ImmediatePriority, () =>
+ Scheduler.unstable_yieldValue('D'),
+ );
// Immediate callback hasn't fired, yet.
expect(Scheduler).toHaveYielded([]);
// They all flush immediately within the subsequent task.
@@ -279,13 +291,19 @@ describe('Scheduler', () => {
});
it('nested immediate callbacks are added to the queue of immediate callbacks', () => {
- scheduleCallback(ImmediatePriority, () => Scheduler.yieldValue('A'));
+ scheduleCallback(ImmediatePriority, () =>
+ Scheduler.unstable_yieldValue('A'),
+ );
scheduleCallback(ImmediatePriority, () => {
- Scheduler.yieldValue('B');
+ Scheduler.unstable_yieldValue('B');
// This callback should go to the end of the queue
- scheduleCallback(ImmediatePriority, () => Scheduler.yieldValue('C'));
+ scheduleCallback(ImmediatePriority, () =>
+ Scheduler.unstable_yieldValue('C'),
+ );
});
- scheduleCallback(ImmediatePriority, () => Scheduler.yieldValue('D'));
+ scheduleCallback(ImmediatePriority, () =>
+ Scheduler.unstable_yieldValue('D'),
+ );
expect(Scheduler).toHaveYielded([]);
// C should flush at the end
expect(Scheduler).toFlushExpired(['A', 'B', 'D', 'C']);
@@ -299,7 +317,7 @@ describe('Scheduler', () => {
it('wrapped callbacks inherit the current priority', () => {
const wrappedCallback = runWithPriority(NormalPriority, () =>
wrapCallback(() => {
- Scheduler.yieldValue(getCurrentPriorityLevel());
+ Scheduler.unstable_yieldValue(getCurrentPriorityLevel());
}),
);
@@ -307,7 +325,7 @@ describe('Scheduler', () => {
UserBlockingPriority,
() =>
wrapCallback(() => {
- Scheduler.yieldValue(getCurrentPriorityLevel());
+ Scheduler.unstable_yieldValue(getCurrentPriorityLevel());
}),
);
@@ -324,11 +342,11 @@ describe('Scheduler', () => {
runWithPriority(NormalPriority, () => {
wrappedCallback = wrapCallback(() => {
- Scheduler.yieldValue(getCurrentPriorityLevel());
+ Scheduler.unstable_yieldValue(getCurrentPriorityLevel());
});
wrappedUserBlockingCallback = runWithPriority(UserBlockingPriority, () =>
wrapCallback(() => {
- Scheduler.yieldValue(getCurrentPriorityLevel());
+ Scheduler.unstable_yieldValue(getCurrentPriorityLevel());
}),
);
});
@@ -342,14 +360,14 @@ describe('Scheduler', () => {
it("immediate callbacks fire even if there's an error", () => {
scheduleCallback(ImmediatePriority, () => {
- Scheduler.yieldValue('A');
+ Scheduler.unstable_yieldValue('A');
throw new Error('Oops A');
});
scheduleCallback(ImmediatePriority, () => {
- Scheduler.yieldValue('B');
+ Scheduler.unstable_yieldValue('B');
});
scheduleCallback(ImmediatePriority, () => {
- Scheduler.yieldValue('C');
+ Scheduler.unstable_yieldValue('C');
throw new Error('Oops C');
});
@@ -369,22 +387,22 @@ describe('Scheduler', () => {
scheduleCallback(ImmediatePriority, () => {
throw new Error('Second error');
});
- expect(() => Scheduler.flushAll()).toThrow('First error');
+ expect(() => Scheduler.unstable_flushAll()).toThrow('First error');
// The next error is thrown in the subsequent event
- expect(() => Scheduler.flushAll()).toThrow('Second error');
+ expect(() => Scheduler.unstable_flushAll()).toThrow('Second error');
});
it('exposes the current priority level', () => {
- Scheduler.yieldValue(getCurrentPriorityLevel());
+ Scheduler.unstable_yieldValue(getCurrentPriorityLevel());
runWithPriority(ImmediatePriority, () => {
- Scheduler.yieldValue(getCurrentPriorityLevel());
+ Scheduler.unstable_yieldValue(getCurrentPriorityLevel());
runWithPriority(NormalPriority, () => {
- Scheduler.yieldValue(getCurrentPriorityLevel());
+ Scheduler.unstable_yieldValue(getCurrentPriorityLevel());
runWithPriority(UserBlockingPriority, () => {
- Scheduler.yieldValue(getCurrentPriorityLevel());
+ Scheduler.unstable_yieldValue(getCurrentPriorityLevel());
});
});
- Scheduler.yieldValue(getCurrentPriorityLevel());
+ Scheduler.unstable_yieldValue(getCurrentPriorityLevel());
});
expect(Scheduler).toHaveYielded([
@@ -398,53 +416,73 @@ describe('Scheduler', () => {
describe('delayed tasks', () => {
it('schedules a delayed task', () => {
- scheduleCallback(NormalPriority, () => Scheduler.yieldValue('A'), {
- delay: 1000,
- });
+ scheduleCallback(
+ NormalPriority,
+ () => Scheduler.unstable_yieldValue('A'),
+ {
+ delay: 1000,
+ },
+ );
// Should flush nothing, because delay hasn't elapsed
expect(Scheduler).toFlushAndYield([]);
// Advance time until right before the threshold
- Scheduler.advanceTime(999);
+ Scheduler.unstable_advanceTime(999);
// Still nothing
expect(Scheduler).toFlushAndYield([]);
// Advance time past the threshold
- Scheduler.advanceTime(1);
+ Scheduler.unstable_advanceTime(1);
// Now it should flush like normal
expect(Scheduler).toFlushAndYield(['A']);
});
it('schedules multiple delayed tasks', () => {
- scheduleCallback(NormalPriority, () => Scheduler.yieldValue('C'), {
- delay: 300,
- });
+ scheduleCallback(
+ NormalPriority,
+ () => Scheduler.unstable_yieldValue('C'),
+ {
+ delay: 300,
+ },
+ );
- scheduleCallback(NormalPriority, () => Scheduler.yieldValue('B'), {
- delay: 200,
- });
+ scheduleCallback(
+ NormalPriority,
+ () => Scheduler.unstable_yieldValue('B'),
+ {
+ delay: 200,
+ },
+ );
- scheduleCallback(NormalPriority, () => Scheduler.yieldValue('D'), {
- delay: 400,
- });
+ scheduleCallback(
+ NormalPriority,
+ () => Scheduler.unstable_yieldValue('D'),
+ {
+ delay: 400,
+ },
+ );
- scheduleCallback(NormalPriority, () => Scheduler.yieldValue('A'), {
- delay: 100,
- });
+ scheduleCallback(
+ NormalPriority,
+ () => Scheduler.unstable_yieldValue('A'),
+ {
+ delay: 100,
+ },
+ );
// Should flush nothing, because delay hasn't elapsed
expect(Scheduler).toFlushAndYield([]);
// Advance some time.
- Scheduler.advanceTime(200);
+ Scheduler.unstable_advanceTime(200);
// Both A and B are no longer delayed. They can now flush incrementally.
expect(Scheduler).toFlushAndYieldThrough(['A']);
expect(Scheduler).toFlushAndYield(['B']);
// Advance the rest
- Scheduler.advanceTime(200);
+ Scheduler.unstable_advanceTime(200);
expect(Scheduler).toFlushAndYield(['C', 'D']);
});
@@ -453,31 +491,31 @@ describe('Scheduler', () => {
// elapses, they will be the most important callback in the queue.
scheduleCallback(
UserBlockingPriority,
- () => Scheduler.yieldValue('Timer 2'),
+ () => Scheduler.unstable_yieldValue('Timer 2'),
{delay: 300},
);
scheduleCallback(
UserBlockingPriority,
- () => Scheduler.yieldValue('Timer 1'),
+ () => Scheduler.unstable_yieldValue('Timer 1'),
{delay: 100},
);
// Schedule some tasks at default priority.
scheduleCallback(NormalPriority, () => {
- Scheduler.yieldValue('A');
- Scheduler.advanceTime(100);
+ Scheduler.unstable_yieldValue('A');
+ Scheduler.unstable_advanceTime(100);
});
scheduleCallback(NormalPriority, () => {
- Scheduler.yieldValue('B');
- Scheduler.advanceTime(100);
+ Scheduler.unstable_yieldValue('B');
+ Scheduler.unstable_advanceTime(100);
});
scheduleCallback(NormalPriority, () => {
- Scheduler.yieldValue('C');
- Scheduler.advanceTime(100);
+ Scheduler.unstable_yieldValue('C');
+ Scheduler.unstable_advanceTime(100);
});
scheduleCallback(NormalPriority, () => {
- Scheduler.yieldValue('D');
- Scheduler.advanceTime(100);
+ Scheduler.unstable_yieldValue('D');
+ Scheduler.unstable_advanceTime(100);
});
// Flush all the work. The timers should be interleaved with the
@@ -497,12 +535,12 @@ describe('Scheduler', () => {
// elapses, they will be the most important callback in the queue.
scheduleCallback(
UserBlockingPriority,
- () => Scheduler.yieldValue('Timer 2'),
+ () => Scheduler.unstable_yieldValue('Timer 2'),
{delay: 300},
);
scheduleCallback(
UserBlockingPriority,
- () => Scheduler.yieldValue('Timer 1'),
+ () => Scheduler.unstable_yieldValue('Timer 1'),
{delay: 100},
);
@@ -512,8 +550,8 @@ describe('Scheduler', () => {
while (tasks.length > 0) {
const task = tasks.shift();
const [label, ms] = task;
- Scheduler.advanceTime(ms);
- Scheduler.yieldValue(label);
+ Scheduler.unstable_advanceTime(ms);
+ Scheduler.unstable_yieldValue(label);
if (tasks.length > 0 && shouldYield()) {
return work;
}
@@ -537,26 +575,26 @@ describe('Scheduler', () => {
scheduleCallback(
NormalPriority,
() => {
- Scheduler.yieldValue('A');
- Scheduler.advanceTime(100);
+ Scheduler.unstable_yieldValue('A');
+ Scheduler.unstable_advanceTime(100);
},
{delay: 100, timeout: 900},
);
- Scheduler.advanceTime(99);
+ Scheduler.unstable_advanceTime(99);
// Does not flush because delay has not elapsed
expect(Scheduler).toFlushAndYield([]);
// Delay has elapsed but task has not expired
- Scheduler.advanceTime(1);
+ Scheduler.unstable_advanceTime(1);
expect(Scheduler).toFlushExpired([]);
// Still not expired
- Scheduler.advanceTime(899);
+ Scheduler.unstable_advanceTime(899);
expect(Scheduler).toFlushExpired([]);
// Now it expires
- Scheduler.advanceTime(1);
+ Scheduler.unstable_advanceTime(1);
expect(Scheduler).toHaveYielded(['A']);
});
@@ -566,17 +604,17 @@ describe('Scheduler', () => {
scheduleCallback(
NormalPriority,
- () => Scheduler.yieldValue('A'),
+ () => Scheduler.unstable_yieldValue('A'),
options,
);
const taskB = scheduleCallback(
NormalPriority,
- () => Scheduler.yieldValue('B'),
+ () => Scheduler.unstable_yieldValue('B'),
options,
);
const taskC = scheduleCallback(
NormalPriority,
- () => Scheduler.yieldValue('C'),
+ () => Scheduler.unstable_yieldValue('C'),
options,
);
@@ -585,7 +623,7 @@ describe('Scheduler', () => {
cancelCallback(taskB);
// Cancel C after its delay has elapsed
- Scheduler.advanceTime(500);
+ Scheduler.unstable_advanceTime(500);
cancelCallback(taskC);
// Only A should flush
diff --git a/packages/scheduler/src/forks/SchedulerHostConfig.mock.js b/packages/scheduler/src/forks/SchedulerHostConfig.mock.js
index 9c1b5bca55..3657092335 100644
--- a/packages/scheduler/src/forks/SchedulerHostConfig.mock.js
+++ b/packages/scheduler/src/forks/SchedulerHostConfig.mock.js
@@ -140,7 +140,7 @@ export function unstable_flushExpired() {
}
}
-export function unstable_flushWithoutYielding(): boolean {
+export function unstable_flushAllWithoutAsserting(): boolean {
// Returns false if no work was flushed.
if (isFlushing) {
throw new Error('Already flushing work.');
@@ -174,14 +174,14 @@ export function unstable_clearYields(): Array {
return values;
}
-export function flushAll(): void {
+export function unstable_flushAll(): void {
if (yieldedValues !== null) {
throw new Error(
'Log is not empty. Assert on the log of yielded values before ' +
'flushing additional work.',
);
}
- unstable_flushWithoutYielding();
+ unstable_flushAllWithoutAsserting();
if (yieldedValues !== null) {
throw new Error(
'While flushing work, something yielded a value. Use an ' +
@@ -191,7 +191,7 @@ export function flushAll(): void {
}
}
-export function yieldValue(value: mixed): void {
+export function unstable_yieldValue(value: mixed): void {
if (yieldedValues === null) {
yieldedValues = [value];
} else {
@@ -199,7 +199,7 @@ export function yieldValue(value: mixed): void {
}
}
-export function advanceTime(ms: number) {
+export function unstable_advanceTime(ms: number) {
currentTime += ms;
if (!isFlushing) {
if (scheduledTimeout !== null && timeoutTime <= currentTime) {
diff --git a/packages/scheduler/unstable_mock.js b/packages/scheduler/unstable_mock.js
index 2e95ba3772..11afa5abd1 100644
--- a/packages/scheduler/unstable_mock.js
+++ b/packages/scheduler/unstable_mock.js
@@ -10,12 +10,12 @@
export * from './src/Scheduler';
export {
- unstable_flushWithoutYielding,
+ unstable_flushAllWithoutAsserting,
unstable_flushNumberOfYields,
unstable_flushExpired,
unstable_clearYields,
unstable_flushUntilNextPaint,
- flushAll,
- yieldValue,
- advanceTime,
+ unstable_flushAll,
+ unstable_yieldValue,
+ unstable_advanceTime,
} from './src/SchedulerHostConfig.js';
diff --git a/packages/shared/forks/Scheduler.umd.js b/packages/shared/forks/Scheduler.umd.js
index 1fb69c3b8a..1af2012376 100644
--- a/packages/shared/forks/Scheduler.umd.js
+++ b/packages/shared/forks/Scheduler.umd.js
@@ -32,7 +32,7 @@ const {
// this doesn't actually exist on the scheduler, but it *does*
// on scheduler/unstable_mock, which we'll need inside act().
- unstable_flushWithoutYielding,
+ unstable_flushAllWithoutAsserting,
} = ReactInternals.Scheduler;
export {
@@ -53,5 +53,5 @@ export {
unstable_LowPriority,
unstable_IdlePriority,
unstable_forceFrameRate,
- unstable_flushWithoutYielding,
+ unstable_flushAllWithoutAsserting,
};
diff --git a/scripts/jest/matchers/schedulerTestMatchers.js b/scripts/jest/matchers/schedulerTestMatchers.js
index b19a984904..ad357df6aa 100644
--- a/scripts/jest/matchers/schedulerTestMatchers.js
+++ b/scripts/jest/matchers/schedulerTestMatchers.js
@@ -28,7 +28,7 @@ function assertYieldsWereCleared(Scheduler) {
function toFlushAndYield(Scheduler, expectedYields) {
assertYieldsWereCleared(Scheduler);
- Scheduler.unstable_flushWithoutYielding();
+ Scheduler.unstable_flushAllWithoutAsserting();
const actualYields = Scheduler.unstable_clearYields();
return captureAssertion(() => {
expect(actualYields).toEqual(expectedYields);
@@ -68,7 +68,7 @@ function toFlushAndThrow(Scheduler, ...rest) {
assertYieldsWereCleared(Scheduler);
return captureAssertion(() => {
expect(() => {
- Scheduler.unstable_flushWithoutYielding();
+ Scheduler.unstable_flushAllWithoutAsserting();
}).toThrow(...rest);
});
}