【发布时间】:2017-08-22 17:53:54
【问题描述】:
编辑 2:我现在已经在 React 应用程序中测试了这些文件。 JavaScript 按预期工作,因此唯一的实际问题似乎是 Jest 快照不一致地处理转义字符,包括无效 JS 的方式,这可能会使调试变得混乱。测试仍然可以正常工作,仅查看快照可能会令人困惑。
编辑:我的问题不是关于何时使用单引号或双引号的问题的重复。我想知道为什么在 JSX 或 Jest 快照中转义反斜杠似乎不起作用,而转义引号却可以。
\\ should become \ yet it appears as \\ in the official Jest example
我正在学习 Jest 并查看他们的示例进行快照测试。在题为它正确转义引号的测试中,引号被正确转义,但是有些部分是两个反斜杠在一起并且它们都在快照中呈现。
这是与 Jest 快照相关的独特事物或错误吗?
这是测试
it('properly escapes quotes', () => {
const tree = renderer
.create(
<Link>
{"\"Facebook\" \\'is \\ 'awesome'"}
</Link>
)
.toJSON();
expect(tree).toMatchSnapshot();
});
这是快照输出:
exports[`properly escapes quotes 1`] = `
<a
className="normal"
href="#"
onMouseEnter={[Function]}
onMouseLeave={[Function]}
>
"Facebook" \\'is \\ 'awesome'
</a>
`;
为什么双反斜杠不呈现为一个反斜杠?毕竟 JavaScript 不就是这样工作的吗?
我将不胜感激。
【问题讨论】:
标签: jestjs