I want to test if window.location.assign
is being called, and so am trying to use spyOn(window.location, 'assign');
, but the method isn't overwriteable.
Are there any other approaches I can use to spy on native methods that can't be overwritten?
What you can do is to create a wrapper of the immutable function in your class:
MyClass.prototype.locationAssign = function () {
window.location.assign.apply(window.location, arguments);
}
and spy on that method.
spyOn(MyClass, 'locationAssign');
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With