mirror of
				https://github.com/zoriya/Kyoo.git
				synced 2025-11-02 18:47:11 -05: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