From c81d2e9dec63808d51d095ecab02a5aac8613fd1 Mon Sep 17 00:00:00 2001 From: Joe Rogers <1337joe@gmail.com> Date: Mon, 3 Jan 2022 23:41:13 +0100 Subject: Remove existing images when applying identify --- .../Manager/ItemImageProviderTests.cs | 29 ++++++++++++++++++++++ 1 file changed, 29 insertions(+) (limited to 'tests') diff --git a/tests/Jellyfin.Providers.Tests/Manager/ItemImageProviderTests.cs b/tests/Jellyfin.Providers.Tests/Manager/ItemImageProviderTests.cs index af273390b3..f466f5fbc8 100644 --- a/tests/Jellyfin.Providers.Tests/Manager/ItemImageProviderTests.cs +++ b/tests/Jellyfin.Providers.Tests/Manager/ItemImageProviderTests.cs @@ -171,6 +171,35 @@ namespace Jellyfin.Providers.Tests.Manager } } + [Theory] + [InlineData(ImageType.Primary, 0)] + [InlineData(ImageType.Primary, 1)] + [InlineData(ImageType.Backdrop, 2)] + public void RemoveImages_DeletesImages_WhenFound(ImageType imageType, int imageCount) + { + var item = GetItemWithImages(imageType, imageCount, false); + + var mockFileSystem = new Mock(MockBehavior.Strict); + if (imageCount > 0) + { + mockFileSystem.Setup(fs => fs.DeleteFile("invalid path 0")) + .Verifiable(); + } + + if (imageCount > 1) + { + mockFileSystem.Setup(fs => fs.DeleteFile("invalid path 1")) + .Verifiable(); + } + + var itemImageProvider = GetItemImageProvider(Mock.Of(), mockFileSystem); + var result = itemImageProvider.RemoveImages(item); + + Assert.Equal(imageCount != 0, result); + Assert.Empty(item.GetImages(imageType)); + mockFileSystem.Verify(); + } + [Theory] [InlineData(ImageType.Primary, 1, false)] [InlineData(ImageType.Backdrop, 2, false)] -- cgit v1.2.3