This commit is contained in:
David Kale
2020-09-08 13:25:36 -04:00
parent e4246d2b5b
commit 91fcbb0108
4227 changed files with 416837 additions and 457884 deletions

View File

@@ -875,13 +875,18 @@ function () {
if (!this.isMockFunction(original)) {
if (typeof original !== 'function') {
throw new Error('Cannot spy the ' + methodName + ' property because it is not a function; ' + this._typeOf(original) + ' given instead');
} // @ts-ignore overriding original method with a Mock
}
var isMethodOwner = object.hasOwnProperty(methodName); // @ts-ignore overriding original method with a Mock
object[methodName] = this._makeComponent({
type: 'function'
}, function () {
object[methodName] = original;
if (isMethodOwner) {
object[methodName] = original;
} else {
delete object[methodName];
}
}); // @ts-ignore original method is now a Mock
object[methodName].mockImplementation(function () {
@@ -933,11 +938,13 @@ function () {
if (!this.isMockFunction(original)) {
if (typeof original !== 'function') {
throw new Error('Cannot spy the ' + propertyName + ' property because it is not a function; ' + this._typeOf(original) + ' given instead');
}
} // @ts-ignore: mock is assignable
descriptor[accessType] = this._makeComponent({
type: 'function'
}, function () {
// @ts-ignore: mock is assignable
descriptor[accessType] = original;
Object.defineProperty(obj, propertyName, descriptor);
});