Skip to content
Merged
Prev Previous commit
Next Next commit
Fix the build
  • Loading branch information
gaearon committed May 18, 2018
commit f17323b73687a84c2362cea3b9f22f744736cd39
3 changes: 2 additions & 1 deletion packages/react-reconciler/inline.js
Original file line number Diff line number Diff line change
@@ -1 +1,2 @@
// TODO
// TODO
export {default} from './src/ReactFiberReconciler';
4 changes: 4 additions & 0 deletions scripts/jest/setupEnvironment.js
Original file line number Diff line number Diff line change
Expand Up @@ -45,3 +45,7 @@ if (typeof window !== 'undefined') {
}
});
}

// TODO
const obj = {};
jest.mock('fbjs/lib/emptyObject', () => obj);
77 changes: 25 additions & 52 deletions scripts/jest/setupMocks.js
Original file line number Diff line number Diff line change
@@ -1,59 +1,32 @@
const obj = {};
jest.mock('fbjs/lib/emptyObject', () => obj);
'use strict';

const forkConfig = require('../rollup/forks');

const shimHostConfigPath = 'react-reconciler/src/ReactFiberHostConfig';
jest.mock('react-reconciler', () => {
return (config) => {
jest.mock('react-reconciler/src/ReactFiberHostConfig', () => config);
jest.mock(shimHostConfigPath, () => config);
return require.requireActual('react-reconciler');
};
});

jest.mock('react-test-renderer', () => {
jest.mock('react-reconciler/inline', () => {
jest.mock('react-reconciler/src/ReactFiberHostConfig',
() => require.requireActual('react-test-renderer/src/ReactTestHostConfig')
);
return require.requireActual('react-reconciler');
});
return require.requireActual('react-test-renderer');
});

jest.mock('react-dom', () => {
jest.mock('react-reconciler/inline', () => {
jest.mock('react-reconciler/src/ReactFiberHostConfig',
() => require.requireActual('react-dom/src/client/ReactDOMHostConfig')
);
return require.requireActual('react-reconciler');
});
return require.requireActual('react-dom');
});

jest.mock('react-art', () => {
jest.mock('react-reconciler/inline', () => {
jest.mock('react-reconciler/src/ReactFiberHostConfig',
() => require.requireActual('react-art/src/ReactARTHostConfig')
);
return require.requireActual('react-reconciler');
});
return require.requireActual('react-art');
});

jest.mock('react-native-renderer', () => {
jest.mock('react-reconciler/inline', () => {
jest.mock('react-reconciler/src/ReactFiberHostConfig',
() => require.requireActual('react-native-renderer/src/ReactNativeHostConfig')
);
return require.requireActual('react-reconciler');
});
return require.requireActual('react-native-renderer');
});

jest.mock('react-native-renderer/fabric', () => {
jest.mock('react-reconciler/inline', () => {
jest.mock('react-reconciler/src/ReactFiberHostConfig',
() => require.requireActual('react-native-renderer/src/ReactFabricHostConfig')
);
return require.requireActual('react-reconciler');
[
'react-dom',
'react-art',
'react-test-renderer',
'react-native-renderer',
'react-native-renderer/fabric',
].forEach(entry => {
const actualHostConfigPath = forkConfig[shimHostConfigPath]('NODE_DEV', entry);
if (typeof actualHostConfigPath !== 'string') {
throw new Error('Could not find the host config for the renderer.');
}
jest.mock(entry, () => {
jest.mock('react-reconciler/inline', () => {
jest.mock(shimHostConfigPath,
() => require.requireActual(actualHostConfigPath)
);
return require.requireActual('react-reconciler');
});
return require.requireActual(entry);
});
return require.requireActual('react-native-renderer/fabric');
});
});
17 changes: 17 additions & 0 deletions scripts/rollup/forks.js
Original file line number Diff line number Diff line change
Expand Up @@ -143,6 +143,23 @@ const forks = Object.freeze({
}
},

'react-reconciler/src/ReactFiberHostConfig': (bundleType, entry) => {
switch (entry) {
case 'react-dom':
return 'react-dom/src/client/ReactDOMHostConfig.js';
case 'react-art':
return 'react-art/src/ReactARTHostConfig.js';
case 'react-native-renderer':
return 'react-native-renderer/src/ReactNativeHostConfig.js';
case 'react-native-renderer/fabric':
return 'react-native-renderer/src/ReactFabricHostConfig.js';
case 'react-test-renderer':
return 'react-test-renderer/src/ReactTestHostConfig.js';
default:
return null;
}
},

// We wrap top-level listeners into guards on www.
'react-dom/src/events/EventListener': (bundleType, entry) => {
switch (bundleType) {
Expand Down