如何为中继定义默认模拟数据?

How to define default mock data for relay?

我正在对使用中继作为 graphql 客户端的 React 应用程序进行单元测试 测试时,我得到这样的模拟数据:

        title: '<mock-value-for-field-"title">',

如何定义默认模拟数据?

要模拟 Relay 中某个字段的特定值,您需要使用 MockPayloadGenerator

https://relay.dev/docs/guides/testing-relay-components/#mock-payload-generator-and-the-relay_test_operation-directive

将需要更多代码来给出一个完整的示例,但本质上将需要执行类似于以下内容的操作:

    environment.mock.resolveMostRecentOperation(operation =>
      MockPayloadGenerator.generate(operation, {
        String(context) {
          if (context.name === 'title') {
            return 'value you want to be used for title field'
          }
        },
      }),
    );