🎨 Verify that failed images are not loaded again
authorDavid ‘Bombe’ Roden <bombe@pterodactylus.net>
Sun, 18 Oct 2026 07:36:32 +0000 (09:36 +0200)
committerDavid ‘Bombe’ Roden <bombe@pterodactylus.net>
Sun, 18 Oct 2026 07:36:32 +0000 (09:36 +0200)
src/test/kotlin/net/pterodactylus/sone/core/DefaultElementLoaderTest.kt

index 4e9a28d..fd70e03 100644 (file)
@@ -28,6 +28,7 @@ import org.hamcrest.Matchers.containsString
 import org.hamcrest.Matchers.equalTo
 import org.hamcrest.Matchers.hasEntry
 import org.hamcrest.Matchers.hasItem
+import org.hamcrest.Matchers.hasSize
 import org.hamcrest.Matchers.not
 import org.hamcrest.TypeSafeDiagnosingMatcher
 import org.junit.Rule
@@ -220,6 +221,15 @@ class DefaultElementLoaderTest {
        }
 
        @Test
+       fun `image is not loaded again after it failed`() {
+               runWithCallback(IMAGE_ID) { elementLoader, _, callback, fetchedUris ->
+                       callback.failed(freenetURI)
+                       elementLoader.loadElement(IMAGE_ID)
+                       assertThat(fetchedUris(), hasSize(1))
+               }
+       }
+
+       @Test
        fun `element loading failure is logged`() {
                runWithCallback(IMAGE_ID) { _, _, callback, _ ->
                        callback.failed(freenetURI)