Merge pull request #586 from rosenbjerg/improve-percentage-progress-test

Improve test for percentage progress events
This commit is contained in:
Malte Rosenbjerg 2025-10-18 00:36:19 +02:00 committed by GitHub
commit 4db4d2c8ea
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -813,13 +813,13 @@ public class VideoTest
var timeDone = TimeSpan.Zero; var timeDone = TimeSpan.Zero;
var analysis = FFProbe.Analyse(TestResources.Mp4Video); var analysis = FFProbe.Analyse(TestResources.Mp4Video);
var events = new List<double>();
void OnPercentageProgess(double percentage) void OnPercentageProgess(double percentage)
{ {
if (percentage < 100) events.Add(percentage);
{
percentageDone = percentage; percentageDone = percentage;
} }
}
void OnTimeProgess(TimeSpan time) void OnTimeProgess(TimeSpan time)
{ {
@ -841,7 +841,10 @@ public class VideoTest
Assert.IsTrue(success); Assert.IsTrue(success);
Assert.IsTrue(File.Exists(outputFile)); Assert.IsTrue(File.Exists(outputFile));
Assert.AreNotEqual(0.0, percentageDone); Assert.AreNotEqual(0.0, percentageDone);
Assert.AreNotEqual(100.0, percentageDone); Assert.IsGreaterThan(1, events.Count);
CollectionAssert.AllItemsAreUnique(events);
Assert.AreNotEqual(100.0, events.First());
Assert.AreEqual(100.0, events.Last(), 0.001);
Assert.AreNotEqual(TimeSpan.Zero, timeDone); Assert.AreNotEqual(TimeSpan.Zero, timeDone);
Assert.AreNotEqual(analysis.Duration, timeDone); Assert.AreNotEqual(analysis.Duration, timeDone);
} }