using System; using System.Linq; using Dapper; using FluentAssertions; using NUnit.Framework; using NzbDrone.Core.Datastore.Migration; using NzbDrone.Core.Test.Framework; namespace NzbDrone.Core.Test.Datastore.Migration { [TestFixture] public class remove_invalid_roksbox_metadata_imagesFixture : MigrationTest { [Test] public void should_remove_incorrect_roksbox_metadata_images() { var db = WithDapperMigrationTestDb(c => { c.Insert.IntoTable("MetadataFiles").Row(new { SeriesId = 1, Consumer = "RoksboxMetadata", Type = 5, RelativePath = @"Season 01\metadata\S01E01.jpg", LastUpdated = "2023-01-21 00:00:00.000", SeasonNumber = 1, EpisodeFileId = 1, Added = "2023-01-21 00:00:00.000", Extension = ".jpg" }); c.Insert.IntoTable("MetadataFiles").Row(new { SeriesId = 1, Consumer = "RoksboxMetadata", Type = 5, RelativePath = @"Season 01\S01E01.jpg", LastUpdated = "2023-01-21 00:00:00.000", SeasonNumber = 1, EpisodeFileId = 1, Added = "2023-01-21 00:00:00.000", Extension = ".jpg" }); }); var metadataFiles = db.Query("SELECT * FROM \"MetadataFiles\""); metadataFiles.Should().HaveCount(1); metadataFiles.First().RelativePath.Should().NotContain("metadata"); } } public class MetadataFile184 { public int Id { get; set; } public int SeriesId { get; set; } public int? EpisodeFileId { get; set; } public int? SeasonNumber { get; set; } public string RelativePath { get; set; } public DateTime Added { get; set; } public DateTime LastUpdated { get; set; } public string Extension { get; set; } public string Hash { get; set; } public string Consumer { get; set; } public int Type { get; set; } } }