mirror of
https://github.com/facebook/react.git
synced 2026-02-26 18:58:05 +00:00
49 lines
1.5 KiB
JavaScript
49 lines
1.5 KiB
JavaScript
/**
|
|
* 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
|
|
*/
|
|
|
|
'use strict';
|
|
|
|
// Polyfills for test environment
|
|
global.ReadableStream =
|
|
require('web-streams-polyfill/ponyfill/es6').ReadableStream;
|
|
global.TextEncoder = require('util').TextEncoder;
|
|
global.TextDecoder = require('util').TextDecoder;
|
|
|
|
// let serverExports;
|
|
let turbopackServerMap;
|
|
let ReactServerDOMServer;
|
|
let ReactServerDOMClient;
|
|
|
|
describe('ReactFlightDOMReply', () => {
|
|
beforeEach(() => {
|
|
jest.resetModules();
|
|
// Simulate the condition resolution
|
|
jest.mock('react', () => require('react/react.shared-subset'));
|
|
jest.mock('react-server-dom-turbopack/server', () =>
|
|
require('react-server-dom-turbopack/server.edge'),
|
|
);
|
|
const TurbopackMock = require('./utils/TurbopackMock');
|
|
// serverExports = TurbopackMock.serverExports;
|
|
turbopackServerMap = TurbopackMock.turbopackServerMap;
|
|
ReactServerDOMServer = require('react-server-dom-turbopack/server.edge');
|
|
jest.resetModules();
|
|
ReactServerDOMClient = require('react-server-dom-turbopack/client.edge');
|
|
});
|
|
|
|
it('can encode a reply', async () => {
|
|
const body = await ReactServerDOMClient.encodeReply({some: 'object'});
|
|
const decoded = await ReactServerDOMServer.decodeReply(
|
|
body,
|
|
turbopackServerMap,
|
|
);
|
|
|
|
expect(decoded).toEqual({some: 'object'});
|
|
});
|
|
});
|