mirror of
https://github.com/zoriya/Kyoo.git
synced 2025-07-08 10:44:20 -04:00
Adding failing tests for tracks
This commit is contained in:
parent
27f2751bd0
commit
6bd7b47fd9
38
Kyoo.Tests/Library/SpecificTests/TrackTests.cs
Normal file
38
Kyoo.Tests/Library/SpecificTests/TrackTests.cs
Normal file
@ -0,0 +1,38 @@
|
||||
using Kyoo.Controllers;
|
||||
using Kyoo.Models;
|
||||
using Xunit;
|
||||
using Xunit.Abstractions;
|
||||
|
||||
namespace Kyoo.Tests.Library
|
||||
{
|
||||
namespace SqLite
|
||||
{
|
||||
public class TrackTests : ATrackTests
|
||||
{
|
||||
public TrackTests(ITestOutputHelper output)
|
||||
: base(new RepositoryActivator(output)) { }
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
namespace PostgreSQL
|
||||
{
|
||||
[Collection(nameof(Postgresql))]
|
||||
public class TrackTests : ATrackTests
|
||||
{
|
||||
public TrackTests(PostgresFixture postgres, ITestOutputHelper output)
|
||||
: base(new RepositoryActivator(output, postgres)) { }
|
||||
}
|
||||
}
|
||||
|
||||
public abstract class ATrackTests : RepositoryTests<Track>
|
||||
{
|
||||
private readonly ITrackRepository _repository;
|
||||
|
||||
protected ATrackTests(RepositoryActivator repositories)
|
||||
: base(repositories)
|
||||
{
|
||||
_repository = repositories.LibraryManager.TrackRepository;
|
||||
}
|
||||
}
|
||||
}
|
@ -88,6 +88,24 @@ namespace Kyoo.Tests
|
||||
ReleaseDate = new DateTime(2020, 06, 05)
|
||||
}
|
||||
},
|
||||
{
|
||||
typeof(Track),
|
||||
() => new Track
|
||||
{
|
||||
ID = 1,
|
||||
EpisodeID = 1,
|
||||
Codec = "subrip",
|
||||
Language = "eng",
|
||||
Path = "/path",
|
||||
Title = "Subtitle track",
|
||||
Type = StreamType.Subtitle,
|
||||
EpisodeSlug = Get<Episode>().Slug,
|
||||
IsDefault = true,
|
||||
IsExternal = false,
|
||||
IsForced = false,
|
||||
TrackIndex = 1
|
||||
}
|
||||
},
|
||||
{
|
||||
typeof(People),
|
||||
() => new People
|
||||
@ -134,6 +152,12 @@ namespace Kyoo.Tests
|
||||
episode.Season = season;
|
||||
context.Episodes.Add(episode);
|
||||
|
||||
Track track = Get<Track>();
|
||||
track.ID = 0;
|
||||
track.EpisodeID = 0;
|
||||
track.Episode = episode;
|
||||
context.Tracks.Add(track);
|
||||
|
||||
context.SaveChanges();
|
||||
}
|
||||
|
||||
|
@ -127,7 +127,7 @@ namespace Kyoo.Controllers
|
||||
|
||||
if (changed.Tracks != null || resetOld)
|
||||
{
|
||||
await _tracks.DeleteAll(x => x.EpisodeID == resource.ID);
|
||||
await Database.Entry(resource).Collection(x => x.Tracks).LoadAsync();
|
||||
resource.Tracks = changed.Tracks;
|
||||
await ValidateTracks(resource);
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user