如何在 React Admin 控制器中对权限进行单元测试?

How to unit test permissions in a React Admin controller?

我正在使用 react-admin,我有一个列表组件,它具有一些基于权限的条件显示行为。

我想编写一个简单的 Jest 测试来断言正确的行为(如果是管理员则显示“编辑”按钮,如果不是管理员则隐藏“编辑”按钮),但我需要将一些模拟记录提供到我的列表组件中。如何将模拟数据传递到我的列表组件?

关于测试基于权限的视图的文档(现在)有一个专门的段落:https://marmelab.com/react-admin/UnitTesting.html#testing-permissions

我也写了an example of unit test available on the code base: UnitShow.spec.js

 it('should show the user role in the second tab', () => {
    const wrapper = shallow(<UserShow permissions="admin" />);

    const tabs = wrapper.find(Tab);
    const fields = tabs.at(1).find(TextField);

    expect(fields.at(0).prop('source')).toBe('role');
});