Home / File/ ReactHooksInspectionIntegrationDOM-test.js — react Source File

ReactHooksInspectionIntegrationDOM-test.js — react Source File

Architecture documentation for ReactHooksInspectionIntegrationDOM-test.js, a javascript file in the react codebase.

Entity Profile

Relationship Graph

Source Code

/**
 * Copyright (c) Meta Platforms, Inc. and affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 *
 * @emails react-core
 * @jest-environment jsdom
 */

'use strict';

let React;
let ReactDOM;
let ReactDOMClient;
let ReactDebugTools;
let act;

function normalizeSourceLoc(tree) {
  tree.forEach(node => {
    if (node.hookSource) {
      node.hookSource.fileName = '**';
      node.hookSource.lineNumber = 0;
      node.hookSource.columnNumber = 0;
    }
    normalizeSourceLoc(node.subHooks);
  });
  return tree;
}

describe('ReactHooksInspectionIntegration', () => {
  beforeEach(() => {
    jest.resetModules();
    React = require('react');
    ReactDOM = require('react-dom');
    ReactDOMClient = require('react-dom/client');
    act = require('internal-test-utils').act;
    ReactDebugTools = require('react-debug-tools');
  });

  it('should support useFormStatus hook', async () => {
    function FormStatus() {
      const status = ReactDOM.useFormStatus();
      React.useMemo(() => 'memo', []);
      React.useMemo(() => 'not used', []);

      return JSON.stringify(status);
    }

    const treeWithoutFiber = ReactDebugTools.inspectHooks(FormStatus);
    expect(normalizeSourceLoc(treeWithoutFiber)).toEqual([
      {
        debugInfo: null,
        hookSource: {
          columnNumber: 0,
          fileName: '**',
          functionName: 'FormStatus',
          lineNumber: 0,
        },
        id: null,
// ... (100 more lines)

Domain

Subdomains

Frequently Asked Questions

What does ReactHooksInspectionIntegrationDOM-test.js do?
ReactHooksInspectionIntegrationDOM-test.js is a source file in the react codebase, written in javascript. It belongs to the BabelCompiler domain, Validation subdomain.
What functions are defined in ReactHooksInspectionIntegrationDOM-test.js?
ReactHooksInspectionIntegrationDOM-test.js defines 1 function(s): normalizeSourceLoc.
Where is ReactHooksInspectionIntegrationDOM-test.js in the architecture?
ReactHooksInspectionIntegrationDOM-test.js is located at packages/react-debug-tools/src/__tests__/ReactHooksInspectionIntegrationDOM-test.js (domain: BabelCompiler, subdomain: Validation, directory: packages/react-debug-tools/src/__tests__).

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free