Skip to content

faulty assertion for React component with React.Fragment causes concordance to crash #1939

Description

@iamstarkov

Description

Test Source

This one works correctly

import React from 'react';
import { shallow } from 'enzyme';
import test from 'ava';

const ConcordanceBugDemoOkay = () => <div />;
test('demo okay', t => {
  const wrapper = shallow(<ConcordanceBugDemoOkay />);
  t.falsy(wrapper);
});

this one does not work correctly:

import React from 'react';
import { shallow } from 'enzyme';
import test from 'ava';

const ConcordanceBugDemoNotOkay = () => <React.Fragment />;
test('demo', t => {
  const wrapper = shallow(<ConcordanceBugDemoNotOkay />);
  t.falsy(wrapper);
});

and causes concordance to crash because it tries to concatenate string with Symbol.

Error Message & Stack Trace

/Users/iamstarkov/projects/project/node_modules/concordance/lib/formatUtils.js:6

Error thrown in test:

TypeError {
  message: 'Cannot convert a Symbol value to a string',
}

Object.wrap [as wrapFromTheme] (node_modules/concordance/lib/formatUtils.js:6:25)
Object.formatName (node_modules/@concordance/react/lib/elementFactory.js:109:29)
Object.finalize (node_modules/@concordance/react/lib/elementFactory.js:133:29)
formatDescriptor (node_modules/concordance/lib/format.js:85:42)
Object.format (node_modules/concordance/lib/format.js:99:10)

Config

N/A

Command-Line Arguments

N/A

Environment

Node.js v8.12.0
darwin 17.7.0
ava --version # 1.0.0-beta.8
npm --version # 6.4.1
yarn --version # 1.9.4

Metadata

Metadata

Assignees

Labels

bugcurrent functionality does not work as desired

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions