ジェネリック関数を冗談でモックする方法をたくさん試しましたが、うまくいきませんでした。これが私には正しいと思われる方法です:
interface ServiceInterface {
get<T>(): T;
}
class Service implements ServiceInterface {
get = jest.fn(<T>(): T => {
throw new Error("Method not implemented.");
});
}
コンパイル時に次のエラーがスローされます。
error TS2416: Property 'get' in type 'Service' is not assignable to the same property in base type 'ServiceInterface'.
Type 'Mock<{}, any[]>' is not assignable to type '<T>() => T'.
Type '{}' is not assignable to type 'T'.
正しい方法を教えていただけますか?
ありがとう