开玩笑的快照使用酶破坏了情感10 /通天塔7

时间:2019-03-04 11:15:46

标签: javascript reactjs jestjs enzyme emotion

所以我开玩笑地用babel 6 / emotion 9在快照中正常生成了css和html,但是我需要更新到babel 7和emotion 10,但是用酶的快照测试不再起作用。更新所需代码后,代码可以编译并正常工作,只是测试被破坏了(迁移文档中没有任何内容显示与测试设置更新有关的任何内容)。

test('renders properly', () => {
  // this works generating the correct css / html snapshot output
  expect(renderer.create(<component.Template>test</component.Template>).toJSON()).toMatchSnapshot();

  //this does not
  const wrapper = shallow(<component.Template>test</component.Template>);

  expect(toJson(wrapper)).toMatchSnapshot();
});

酶的版本生成以下输出:

exports[`renders properly 1`] = `
<ContextConsumer>
  <Component />
</ContextConsumer>
`;

我尝试添加情感序列化器,方法是将其添加到jest配置中的snapshotSerializers并手动添加到setupFilesAfterEnv脚本中。

有人知道为什么我会得到这个输出吗?

1 个答案:

答案 0 :(得分:1)

如果您正确配置了所有内容,请

test('renders properly', () => {
  const wrapper = shallow(<component.Template>test</component.Template>);
  expect(wrapper).toMatchSnapshot();
});

这应该可以正常工作。