diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-19 01:47:29 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-19 01:47:29 +0000 |
commit | 0ebf5bdf043a27fd3dfb7f92e0cb63d88954c44d (patch) | |
tree | a31f07c9bcca9d56ce61e9a1ffd30ef350d513aa /image/test/mochitest/test_image_cache_notification.html | |
parent | Initial commit. (diff) | |
download | firefox-esr-0ebf5bdf043a27fd3dfb7f92e0cb63d88954c44d.tar.xz firefox-esr-0ebf5bdf043a27fd3dfb7f92e0cb63d88954c44d.zip |
Adding upstream version 115.8.0esr.upstream/115.8.0esr
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'image/test/mochitest/test_image_cache_notification.html')
-rw-r--r-- | image/test/mochitest/test_image_cache_notification.html | 47 |
1 files changed, 47 insertions, 0 deletions
diff --git a/image/test/mochitest/test_image_cache_notification.html b/image/test/mochitest/test_image_cache_notification.html new file mode 100644 index 0000000000..73adac25ff --- /dev/null +++ b/image/test/mochitest/test_image_cache_notification.html @@ -0,0 +1,47 @@ +<!DOCTYPE HTML> +<html> + <head> + <script src="/tests/SimpleTest/SimpleTest.js"></script> + </head> + <body> + <button>Add Image</button> + <script> + /* Test to ensure http-on-image-cache-response should only be notified + * once per image + */ + + SimpleTest.waitForExplicitFinish(); + async function addImage() { + const newImage = document.createElement("img"); + + const imageLoaded = new Promise((r) => { + newImage.onload = r; + }); + + newImage.src = "./over.png"; + document.body.appendChild(newImage); + return imageLoaded; + } + + let imageCacheCallbackRunCount = 0; + const cb = SpecialPowers.wrapCallback(() => { + imageCacheCallbackRunCount += 1; + }); + SpecialPowers.addObserver(cb, "http-on-image-cache-response"); + + async function runTest() { + await addImage(); + SimpleTest.ok(imageCacheCallbackRunCount == 0, "first load of over.png shouldn't be cached"); + await addImage(); + SimpleTest.ok(imageCacheCallbackRunCount == 1, "second load of over.png should be cached"); + await addImage(); + await addImage(); + await addImage(); + SimpleTest.ok(imageCacheCallbackRunCount == 1, "further loads of over.png shouldn't be notified"); + SimpleTest.finish(); + } + + runTest(); + </script> + </body> +</html> |