diff options
| author | Luke Pulverenti <luke.pulverenti@gmail.com> | 2014-08-31 14:28:20 -0400 |
|---|---|---|
| committer | Luke Pulverenti <luke.pulverenti@gmail.com> | 2014-08-31 14:28:20 -0400 |
| commit | bdc04cda174da26631e6f9ec90f7dccf9efda941 (patch) | |
| tree | 8b2bdcf039f837041e61175cd9e7f324d8ccf8e3 /MediaBrowser.Tests/MediaEncoding/Subtitles/AssParserTests.cs | |
| parent | 6e25c572faa463459348015479935fcc6f3b55b0 (diff) | |
fix subtitle unit tests
Diffstat (limited to 'MediaBrowser.Tests/MediaEncoding/Subtitles/AssParserTests.cs')
| -rw-r--r-- | MediaBrowser.Tests/MediaEncoding/Subtitles/AssParserTests.cs | 59 |
1 files changed, 59 insertions, 0 deletions
diff --git a/MediaBrowser.Tests/MediaEncoding/Subtitles/AssParserTests.cs b/MediaBrowser.Tests/MediaEncoding/Subtitles/AssParserTests.cs new file mode 100644 index 000000000..17687bc3a --- /dev/null +++ b/MediaBrowser.Tests/MediaEncoding/Subtitles/AssParserTests.cs @@ -0,0 +1,59 @@ +using MediaBrowser.MediaEncoding.Subtitles; +using Microsoft.VisualStudio.TestTools.UnitTesting; +using System.Collections.Generic; +using System.IO; +using System.Threading; + +namespace MediaBrowser.Tests.MediaEncoding.Subtitles { + + [TestClass] + public class AssParserTests { + + [TestMethod] + public void TestParse() { + + var expectedSubs = + new SubtitleTrackInfo { + TrackEvents = new List<SubtitleTrackEvent> { + new SubtitleTrackEvent { + Id = "1", + StartPositionTicks = 24000000, + EndPositionTicks = 72000000, + Text = + "Senator, we're "+ParserValues.NewLine+"making our final "+ParserValues.NewLine+"approach into Coruscant." + }, + new SubtitleTrackEvent { + Id = "2", + StartPositionTicks = 97100000, + EndPositionTicks = 133900000, + Text = + "Very good, Lieutenant." + }, + new SubtitleTrackEvent { + Id = "3", + StartPositionTicks = 150400000, + EndPositionTicks = 180400000, + Text = "It's "+ParserValues.NewLine+"a "+ParserValues.NewLine+"trap!" + } + } + }; + + var sut = new AssParser(); + + var stream = File.OpenRead(@"MediaEncoding\Subtitles\TestSubtitles\data.ass"); + + var result = sut.Parse(stream, CancellationToken.None); + + Assert.IsNotNull(result); + Assert.AreEqual(expectedSubs.TrackEvents.Count,result.TrackEvents.Count); + for (int i = 0; i < expectedSubs.TrackEvents.Count; i++) + { + Assert.AreEqual(expectedSubs.TrackEvents[i].Id, result.TrackEvents[i].Id); + Assert.AreEqual(expectedSubs.TrackEvents[i].StartPositionTicks, result.TrackEvents[i].StartPositionTicks); + Assert.AreEqual(expectedSubs.TrackEvents[i].EndPositionTicks, result.TrackEvents[i].EndPositionTicks); + Assert.AreEqual(expectedSubs.TrackEvents[i].Text, result.TrackEvents[i].Text); + } + + } + } +}
\ No newline at end of file |
