From 8116ddd0a017041ee30d6b02e22058f4f6efd1f6 Mon Sep 17 00:00:00 2001 From: Sebastian Silbermann Date: Tue, 8 Jan 2019 15:37:27 +0100 Subject: [PATCH] Fix memo and lazy element types being considered elements --- packages/react-is/src/ReactIs.js | 4 ++-- packages/react-is/src/__tests__/ReactIs-test.js | 12 ++++++------ 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/packages/react-is/src/ReactIs.js b/packages/react-is/src/ReactIs.js index c618f621d99c7..6a5551f00426c 100644 --- a/packages/react-is/src/ReactIs.js +++ b/packages/react-is/src/ReactIs.js @@ -48,14 +48,14 @@ export function typeOf(object: any) { switch ($$typeofType) { case REACT_CONTEXT_TYPE: case REACT_FORWARD_REF_TYPE: + case REACT_LAZY_TYPE: + case REACT_MEMO_TYPE: case REACT_PROVIDER_TYPE: return $$typeofType; default: return $$typeof; } } - case REACT_LAZY_TYPE: - case REACT_MEMO_TYPE: case REACT_PORTAL_TYPE: return $$typeof; } diff --git a/packages/react-is/src/__tests__/ReactIs-test.js b/packages/react-is/src/__tests__/ReactIs-test.js index 9838096d3a5d4..929fc87fb23db 100644 --- a/packages/react-is/src/__tests__/ReactIs-test.js +++ b/packages/react-is/src/__tests__/ReactIs-test.js @@ -150,17 +150,17 @@ describe('ReactIs', () => { it('should identify memo', () => { const Component = () => React.createElement('div'); - const memoized = React.memo(Component); - expect(ReactIs.typeOf(memoized)).toBe(ReactIs.Memo); - expect(ReactIs.isMemo(memoized)).toBe(true); + const Memoized = React.memo(Component); + expect(ReactIs.typeOf()).toBe(ReactIs.Memo); + expect(ReactIs.isMemo()).toBe(true); expect(ReactIs.isMemo(Component)).toBe(false); }); it('should identify lazy', () => { const Component = () => React.createElement('div'); - const lazyComponent = React.lazy(() => Component); - expect(ReactIs.typeOf(lazyComponent)).toBe(ReactIs.Lazy); - expect(ReactIs.isLazy(lazyComponent)).toBe(true); + const LazyComponent = React.lazy(() => Component); + expect(ReactIs.typeOf()).toBe(ReactIs.Lazy); + expect(ReactIs.isLazy()).toBe(true); expect(ReactIs.isLazy(Component)).toBe(false); });