error:... is not a constructor
reason:The mock can't be an arrow function because calling new on an arrow function is not allowed in JavaScript.
ref:https://jestjs.io/docs/es6-class-mocks#manual-mock-that-is-another-es6-class
error: Matcher error: received value must be a mock or spy function
reason: Use .toHaveBeenCalledTimes to ensure that a mock function got called exact number of times.
ref:https://jestjs.io/docs/expect#tohavebeencalledtimesnumber