ctimmerm / axios-mock-adapter

Axios adapter that allows to easily mock requests
MIT License
3.47k stars 245 forks source link

Not assignable to type MockArrayResponse #401

Open matttk opened 1 week ago

matttk commented 1 week ago

I updated to v2.1.0 today and now I am getting multiple compile errors with "not assignable to type MockArrayResponse". I see from the releases page that MockResponse types have been added.

The problem is that I have some helper functions that return some responses.

e.g.

function getResponse(config: AxiosRequestConfig) {
  // blah blah

  return [
    200,
    {
      // etc.
    }
  ];
}

If I simply add : [number, { [key: string]: unknown }] as a return type for the above function, the compile error goes away. Without it, typescript automatically assumes the type is Array<number | { /* object description here */ }>, which is not accepted.

If I just copy and paste MockArrayResponse into the file, everything compiles just fine. Is there any reason not to export this type?

matttk commented 1 week ago

Hmmm... I fixed the version to 2.0.0 and still have the issue, but I was also updating TypeScript to 5.6.3. When I revert that back to 5.6.2, it works fine, so I'm assuming the problem is actually due to some TS changes.

Nevertheless, having an response type would help here.