mirror of
				https://github.com/jellyfin/jellyfin.git
				synced 2025-10-30 18:22:48 -04:00 
			
		
		
		
	
		
			
				
	
	
		
			29 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			C#
		
	
	
	
	
	
			
		
		
	
	
			29 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			C#
		
	
	
	
	
	
| using System.IO;
 | |
| using System.Text.Json;
 | |
| using Xunit;
 | |
| 
 | |
| namespace Jellyfin.MediaEncoding.Keyframes.FfProbe
 | |
| {
 | |
|     public class FfProbeKeyframeExtractorTests
 | |
|     {
 | |
|         [Theory]
 | |
|         [InlineData("keyframes.txt", "keyframes_result.json")]
 | |
|         [InlineData("keyframes_streamduration.txt", "keyframes_streamduration_result.json")]
 | |
|         public void ParseStream_Valid_Success(string testDataFileName, string resultFileName)
 | |
|         {
 | |
|             var testDataPath = Path.Combine("FfProbe/Test Data", testDataFileName);
 | |
|             var resultPath = Path.Combine("FfProbe/Test Data", resultFileName);
 | |
|             using var resultFileStream = File.OpenRead(resultPath);
 | |
|             var expectedResult = JsonSerializer.Deserialize<KeyframeData>(resultFileStream)!;
 | |
| 
 | |
|             using var fileStream = File.OpenRead(testDataPath);
 | |
|             using var streamReader = new StreamReader(fileStream);
 | |
| 
 | |
|             var result = FfProbeKeyframeExtractor.ParseStream(streamReader);
 | |
| 
 | |
|             Assert.Equal(expectedResult.TotalDuration, result.TotalDuration);
 | |
|             Assert.Equal(expectedResult.KeyframeTicks, result.KeyframeTicks);
 | |
|         }
 | |
|     }
 | |
| }
 |