The download is initiated by setting
location.href = [some url to an image]
I want assert, as close as possible, that the download will succeed but without actually performing the download. That the URL is correct can be assumed.
What you essentially want to do is stub a call to location.href
using cy.stub()
, but testing that your application has called location.href
and asserting the url
passed to it is a bit tricky since href
is an attribute, not a function. Stubs cannot replace attributes, only functions.
This is testable with some restructure of your application code. There is a great answer on how to do this in this stackoverflow answer: https://stackoverflow.com/a/36678937/5878476