@@ -18,7 +18,6 @@ let ReactNoopFlightClient;
18
18
let ErrorBoundary ;
19
19
let NoErrorExpected ;
20
20
let Scheduler ;
21
- let ContextRegistry ;
22
21
23
22
describe ( 'ReactFlight' , ( ) => {
24
23
beforeEach ( ( ) => {
@@ -30,9 +29,6 @@ describe('ReactFlight', () => {
30
29
ReactNoopFlightClient = require ( 'react-noop-renderer/flight-client' ) ;
31
30
act = require ( 'jest-react' ) . act ;
32
31
Scheduler = require ( 'scheduler' ) ;
33
- const ReactSharedInternals =
34
- React . __SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED ;
35
- ContextRegistry = ReactSharedInternals . ContextRegistry ;
36
32
37
33
ErrorBoundary = class extends React . Component {
38
34
state = { hasError : false , error : null } ;
@@ -429,8 +425,6 @@ describe('ReactFlight', () => {
429
425
430
426
const transport = ReactNoopFlightServer . render ( < Foo /> ) ;
431
427
act ( ( ) => {
432
- ServerContext . _currentRenderer = null ;
433
- ServerContext . _currentRenderer2 = null ;
434
428
ReactNoop . render ( ReactNoopFlightClient . read ( transport ) ) ;
435
429
} ) ;
436
430
@@ -631,14 +625,26 @@ describe('ReactFlight', () => {
631
625
const transport = ReactNoopFlightServer . render ( < ServerApp /> ) ;
632
626
633
627
expect ( ClientContext ) . toBe ( undefined ) ;
628
+
629
+ // Reset all modules, except flight-modules which keeps the registry of client components
630
+ const flightModules = require ( 'react-noop-renderer/flight-modules' ) ;
631
+ jest . resetModules ( ) ;
632
+ jest . mock ( 'react-noop-renderer/flight-modules' , ( ) => flightModules ) ;
633
+
634
+ React = require ( 'react' ) ;
635
+ ReactNoop = require ( 'react-noop-renderer' ) ;
636
+ ReactNoopFlightServer = require ( 'react-noop-renderer/flight-server' ) ;
637
+ ReactNoopFlightClient = require ( 'react-noop-renderer/flight-client' ) ;
638
+ act = require ( 'jest-react' ) . act ;
639
+ Scheduler = require ( 'scheduler' ) ;
640
+
634
641
act ( ( ) => {
635
- delete ContextRegistry . ServerContext ;
636
- ServerContext . _currentRenderer = null ;
637
- ServerContext . _currentRenderer2 = null ;
638
642
const serverModel = ReactNoopFlightClient . read ( transport ) ;
639
643
ReactNoop . render ( < ClientApp serverModel = { serverModel } /> ) ;
640
644
} ) ;
641
645
646
+ expect ( ClientContext ) . not . toBe ( ServerContext ) ;
647
+
642
648
expect ( ReactNoop ) . toMatchRenderedOutput (
643
649
< >
644
650
< article >
0 commit comments