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)
|
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),
|
typeof(People),
|
||||||
() => new People
|
() => new People
|
||||||
@ -134,6 +152,12 @@ namespace Kyoo.Tests
|
|||||||
episode.Season = season;
|
episode.Season = season;
|
||||||
context.Episodes.Add(episode);
|
context.Episodes.Add(episode);
|
||||||
|
|
||||||
|
Track track = Get<Track>();
|
||||||
|
track.ID = 0;
|
||||||
|
track.EpisodeID = 0;
|
||||||
|
track.Episode = episode;
|
||||||
|
context.Tracks.Add(track);
|
||||||
|
|
||||||
context.SaveChanges();
|
context.SaveChanges();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -127,7 +127,7 @@ namespace Kyoo.Controllers
|
|||||||
|
|
||||||
if (changed.Tracks != null || resetOld)
|
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;
|
resource.Tracks = changed.Tracks;
|
||||||
await ValidateTracks(resource);
|
await ValidateTracks(resource);
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user