ActivityStrictMode-test.js — react Source File
Architecture documentation for ActivityStrictMode-test.js, a javascript file in the react codebase.
Entity Profile
Source Code
let React;
let Activity;
let ReactNoop;
let act;
let log;
describe('Activity StrictMode', () => {
beforeEach(() => {
jest.resetModules();
log = [];
React = require('react');
Activity = React.Activity;
ReactNoop = require('react-noop-renderer');
act = require('internal-test-utils').act;
});
function Component({label}) {
React.useEffect(() => {
log.push(`${label}: useEffect mount`);
return () => log.push(`${label}: useEffect unmount`);
});
React.useLayoutEffect(() => {
log.push(`${label}: useLayoutEffect mount`);
return () => log.push(`${label}: useLayoutEffect unmount`);
});
log.push(`${label}: render`);
return <span>label</span>;
}
// @gate __DEV__
it('should trigger strict effects when offscreen is visible', async () => {
await act(() => {
ReactNoop.render(
<React.StrictMode>
<Activity mode="visible">
<Component label="A" />
</Activity>
</React.StrictMode>,
);
});
expect(log).toEqual([
'A: render',
'A: render',
'A: useLayoutEffect mount',
'A: useEffect mount',
'A: useLayoutEffect unmount',
'A: useEffect unmount',
'A: useLayoutEffect mount',
'A: useEffect mount',
]);
});
// @gate __DEV__
it('should not trigger strict effects when offscreen is hidden', async () => {
await act(() => {
// ... (174 more lines)
Source
Frequently Asked Questions
What does ActivityStrictMode-test.js do?
ActivityStrictMode-test.js is a source file in the react codebase, written in javascript.
Where is ActivityStrictMode-test.js in the architecture?
ActivityStrictMode-test.js is located at packages/react-reconciler/src/__tests__/ActivityStrictMode-test.js (directory: packages/react-reconciler/src/__tests__).
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free