Skip to content

Commit

Permalink
[enzyme-adapter-react-16] [new] add isFragment
Browse files Browse the repository at this point in the history
  • Loading branch information
madicap authored and ljharb committed Aug 5, 2018
1 parent e234bbf commit ff8fde2
Show file tree
Hide file tree
Showing 2 changed files with 16 additions and 1 deletion.
5 changes: 5 additions & 0 deletions packages/enzyme-adapter-react-16/src/ReactSixteenAdapter.js
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@ import {
Portal,
} from 'react-is';
import { EnzymeAdapter } from 'enzyme';
import { typeOfNode } from 'enzyme/build/Utils';
import {
displayNameOfNode,
elementToTree,
Expand Down Expand Up @@ -388,6 +389,10 @@ class ReactSixteenAdapter extends EnzymeAdapter {
return isValidElementType(object);
}

isFragment(fragment) {
return typeOfNode(fragment) === Fragment;
}

createElement(...args) {
return React.createElement(...args);
}
Expand Down
12 changes: 11 additions & 1 deletion packages/enzyme-test-suite/test/Adapter-spec.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ import {
Profiler,
} from './_helpers/react-compat';
import { is } from './_helpers/version';
import { itIf, describeWithDOM } from './_helpers';
import { itIf, describeWithDOM, describeIf } from './_helpers';

const { adapter } = get();

Expand Down Expand Up @@ -906,4 +906,14 @@ describe('Adapter', () => {
expect(getDisplayName(<Profiler />)).to.equal('Profiler');
});
});

describeIf(is('>= 16.2'), 'determines if node isFragment', () => {
it('correctly identifies Fragment', () => {
expect(adapter.isFragment(<Fragment />)).to.equal(true);
});

it('correctly identifies a non-Fragment', () => {
expect(adapter.isFragment(<div />)).to.equal(false);
});
});
});

0 comments on commit ff8fde2

Please sign in to comment.