A ton of random bugs and polish (#3668)

This commit is contained in:
Joe Milazzo 2025-03-23 17:06:20 -05:00 committed by GitHub
parent b45d92ea5c
commit de651215f5
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
144 changed files with 852 additions and 848 deletions

View file

@ -12,6 +12,7 @@ using API.DTOs.SeriesDetail;
using API.Entities;
using API.Entities.Enums;
using API.Entities.Metadata;
using API.Entities.Person;
using API.Extensions;
using API.Helpers.Builders;
using API.Services;
@ -809,6 +810,7 @@ public class SeriesServiceTests : AbstractDbTest
Assert.True(success);
var series = await _unitOfWork.SeriesRepository.GetSeriesByIdAsync(1);
Assert.NotNull(series);
Assert.NotNull(series.Metadata);
Assert.True(series.Metadata.Genres.Select(g1 => g1.Title).All(g2 => g2 == "New Genre".SentenceCase()));
Assert.False(series.Metadata.GenresLocked); // GenreLocked is false unless the UI Explicitly says it should be locked
@ -847,6 +849,7 @@ public class SeriesServiceTests : AbstractDbTest
Assert.True(success);
var series = await _unitOfWork.SeriesRepository.GetSeriesByIdAsync(1);
Assert.NotNull(series);
Assert.NotNull(series.Metadata);
Assert.True(series.Metadata.People.Select(g => g.Person.Name).All(personName => personName == "Existing Person"));
Assert.False(series.Metadata.PublisherLocked); // PublisherLocked is false unless the UI Explicitly says it should be locked
@ -887,6 +890,7 @@ public class SeriesServiceTests : AbstractDbTest
Assert.True(success);
var series = await _unitOfWork.SeriesRepository.GetSeriesByIdAsync(1);
Assert.NotNull(series);
Assert.NotNull(series.Metadata);
Assert.True(series.Metadata.People.Select(g => g.Person.Name).All(personName => personName == "Existing Person"));
Assert.True(series.Metadata.PublisherLocked);
@ -976,6 +980,7 @@ public class SeriesServiceTests : AbstractDbTest
Assert.True(success);
var series = await _unitOfWork.SeriesRepository.GetSeriesByIdAsync(1);
Assert.NotNull(series);
Assert.NotNull(series.Metadata);
Assert.False(series.Metadata.People.Any());
}
@ -1010,6 +1015,7 @@ public class SeriesServiceTests : AbstractDbTest
Assert.True(success);
var series = await _unitOfWork.SeriesRepository.GetSeriesByIdAsync(1);
Assert.NotNull(series);
Assert.NotNull(series.Metadata);
Assert.True(series.Metadata.Genres.Select(g => g.Title).All(g => g == "Existing Genre".SentenceCase()));
Assert.True(series.Metadata.GenresLocked);
@ -1039,6 +1045,7 @@ public class SeriesServiceTests : AbstractDbTest
Assert.True(success);
var series = await _unitOfWork.SeriesRepository.GetSeriesByIdAsync(1);
Assert.NotNull(series);
Assert.NotNull(series.Metadata);
Assert.Equal(0, series.Metadata.ReleaseYear);
Assert.False(series.Metadata.ReleaseYearLocked);
@ -1071,6 +1078,7 @@ public class SeriesServiceTests : AbstractDbTest
Assert.True(success);
var series = await _unitOfWork.SeriesRepository.GetSeriesByIdAsync(s.Id);
Assert.NotNull(series);
Assert.NotNull(series.Metadata);
Assert.Contains("New Genre".SentenceCase(), series.Metadata.Genres.Select(g => g.Title));
Assert.False(series.Metadata.GenresLocked); // Ensure the lock is not activated unless specified.
@ -1104,6 +1112,7 @@ public class SeriesServiceTests : AbstractDbTest
Assert.True(success);
var series = await _unitOfWork.SeriesRepository.GetSeriesByIdAsync(s.Id);
Assert.NotNull(series);
Assert.NotNull(series.Metadata);
Assert.DoesNotContain("Existing Genre".SentenceCase(), series.Metadata.Genres.Select(g => g.Title));
Assert.Contains("New Genre".SentenceCase(), series.Metadata.Genres.Select(g => g.Title));
@ -1137,6 +1146,7 @@ public class SeriesServiceTests : AbstractDbTest
Assert.True(success);
var series = await _unitOfWork.SeriesRepository.GetSeriesByIdAsync(s.Id);
Assert.NotNull(series);
Assert.NotNull(series.Metadata);
Assert.Empty(series.Metadata.Genres);
}
@ -1168,6 +1178,7 @@ public class SeriesServiceTests : AbstractDbTest
Assert.True(success);
var series = await _unitOfWork.SeriesRepository.GetSeriesByIdAsync(s.Id);
Assert.NotNull(series);
Assert.NotNull(series.Metadata);
Assert.Contains("New Tag".SentenceCase(), series.Metadata.Tags.Select(t => t.Title));
}
@ -1200,6 +1211,7 @@ public class SeriesServiceTests : AbstractDbTest
Assert.True(success);
var series = await _unitOfWork.SeriesRepository.GetSeriesByIdAsync(s.Id);
Assert.NotNull(series);
Assert.NotNull(series.Metadata);
Assert.DoesNotContain("Existing Tag".SentenceCase(), series.Metadata.Tags.Select(t => t.Title));
Assert.Contains("New Tag".SentenceCase(), series.Metadata.Tags.Select(t => t.Title));
@ -1233,6 +1245,7 @@ public class SeriesServiceTests : AbstractDbTest
Assert.True(success);
var series = await _unitOfWork.SeriesRepository.GetSeriesByIdAsync(s.Id);
Assert.NotNull(series);
Assert.NotNull(series.Metadata);
Assert.Empty(series.Metadata.Tags);
}
@ -1363,7 +1376,7 @@ public class SeriesServiceTests : AbstractDbTest
#endregion
#region SeriesRelation
#region Series Relation
[Fact]
public async Task UpdateRelatedSeries_ShouldAddAllRelations()
{
@ -1431,6 +1444,7 @@ public class SeriesServiceTests : AbstractDbTest
addRelationDto.Sequels.Add(2);
await _seriesService.UpdateRelatedSeries(addRelationDto);
Assert.NotNull(series1);
Assert.NotNull(series2);
Assert.Equal(2, series1.Relations.Single(s => s.TargetSeriesId == 2).TargetSeriesId);
Assert.Equal(1, series2.Relations.Single(s => s.TargetSeriesId == 1).TargetSeriesId);
}
@ -1473,8 +1487,9 @@ public class SeriesServiceTests : AbstractDbTest
// Remove relations
var removeRelationDto = CreateRelationsDto(series1);
await _seriesService.UpdateRelatedSeries(removeRelationDto);
Assert.Empty(series1.Relations.Where(s => s.TargetSeriesId == 1));
Assert.Empty(series1.Relations.Where(s => s.TargetSeriesId == 2));
Assert.NotNull(series1);
Assert.DoesNotContain(series1.Relations, s => s.TargetSeriesId == 1);
Assert.DoesNotContain(series1.Relations, s => s.TargetSeriesId == 2);
}
@ -1507,6 +1522,8 @@ public class SeriesServiceTests : AbstractDbTest
var addRelationDto = CreateRelationsDto(series1);
addRelationDto.Adaptations.Add(2);
await _seriesService.UpdateRelatedSeries(addRelationDto);
Assert.NotNull(series1);
Assert.Equal(2, series1.Relations.Single(s => s.TargetSeriesId == 2).TargetSeriesId);
_context.Series.Remove(await _unitOfWork.SeriesRepository.GetSeriesByIdAsync(2));