mirror of
https://github.com/jellyfin/jellyfin.git
synced 2026-10-23 03:27:39 +09:00
Backport pull request #18278 from jellyfin/release-12.z
Compare local image dates with a one second tolerance
Original-merge: 2a59779ae9
Merged-by: crobibero <cody@robibe.ro>
Backported-by: Cody Robibero <cody@robibe.ro>
This commit is contained in:
1 parent
9c28aab413
commit
a2bd48c1d2
3 files changed
+37
-4
No files matched your search
@@ -176,6 +176,37 @@ namespace Jellyfin.Providers.Tests.Manager
|
||||
}
|
||||
}
|
||||
|
||||
[Theory]
|
||||
[InlineData(ImageType.Primary, 1)]
|
||||
[InlineData(ImageType.Backdrop, 2)]
|
||||
public void MergeImages_StoredTimeTruncatedToMicroseconds_NoChange(ImageType imageType, int imageCount)
|
||||
{
|
||||
// Regression test for https://github.com/jellyfin/jellyfin/issues/18274
|
||||
var fileTime = new DateTime(2021, 1, 1, 0, 0, 0, DateTimeKind.Utc).AddTicks(1234567);
|
||||
var storedTime = fileTime.AddTicks(-(fileTime.Ticks % 10));
|
||||
|
||||
var fileSystem = new Mock<IFileSystem>();
|
||||
fileSystem.Setup(fs => fs.GetLastWriteTimeUtc(It.IsAny<FileSystemMetadata>()))
|
||||
.Returns(fileTime);
|
||||
BaseItem.FileSystem = fileSystem.Object;
|
||||
|
||||
var item = GetItemWithImages(imageType, imageCount, true);
|
||||
foreach (var image in item.GetImages(imageType))
|
||||
{
|
||||
image.DateModified = storedTime;
|
||||
image.Height = 1;
|
||||
image.Width = 1;
|
||||
}
|
||||
|
||||
var images = GetImages(imageType, imageCount, true);
|
||||
|
||||
var itemImageProvider = GetItemImageProvider(null, fileSystem);
|
||||
var changed = itemImageProvider.MergeImages(item, images, new ImageRefreshOptions(Mock.Of<IDirectoryService>()));
|
||||
|
||||
Assert.False(changed);
|
||||
Assert.All(item.GetImages(imageType), image => Assert.Equal(1, image.Width));
|
||||
}
|
||||
|
||||
[Theory]
|
||||
[InlineData(ImageType.Primary, 0)]
|
||||
[InlineData(ImageType.Primary, 1)]
|
||||
|
||||
Reference in new issue
Block a user