当通过useContext()挂钩使用mobx存储时,什么是编写单元测试用例的最佳方法?我们应该使用酶还是反应测试库?这里不使用Provider或@inject()

店铺设计:

//StoreA
export class StoreA {
  rootStore: RootStore;
  constructor(rootStore: RootStore) {
    this.rootStore = rootStore;
  }
  //StoreA implementations...
}

 //StoreB
export class StoreB {
  rootStore: RootStore;
  constructor(rootStore: RootStore) {
    this.rootStore = rootStore;
  }
  //StoreB implementations...
}

//RootStore
export class RootStore {
  StoreA: StoreA;
  StoreB: StoreB;
  constructor() {
    this.storeA = new storeA(this);
    this.storeB = new storeB(this);
  }
}

export const RootStoreContext = createContext(new RootStore());

在组件存储区中使用useContext钩子

const SomeComponent = ({}) => {
  const rootStore = useContext(RootStoreContext);
  const { storeAdata, storeAmethods } = rootStore.storeA;
  //Component code....
}

在以下情况下,

  1. 如何只为单个商店编写单元测试用例(具有循环依赖项)
  2. 如果使用React测试库,如何模拟存储和useContext?
  3. 可以使用酶吗?
  4. 哪个库适合编写UTC?