< Summary - Jellyfin

Information
Class: MediaBrowser.MediaEncoding.Subtitles.JsonWriter
Assembly: MediaBrowser.MediaEncoding
File(s): /srv/git/jellyfin/MediaBrowser.MediaEncoding/Subtitles/JsonWriter.cs
Line coverage
0%
Covered lines: 0
Uncovered lines: 18
Coverable lines: 18
Total lines: 44
Line coverage: 0%
Branch coverage
0%
Covered branches: 0
Total branches: 2
Branch coverage: 0%
Method coverage

Feature is only available for sponsors

Upgrade to PRO version

Coverage history

Coverage history 0 25 50 75 100

Metrics

MethodBranch coverage Crap Score Cyclomatic complexity Line coverage
Write(...)0%620%

File(s)

/srv/git/jellyfin/MediaBrowser.MediaEncoding/Subtitles/JsonWriter.cs

#LineLine coverage
 1using System.IO;
 2using System.Text.Json;
 3using System.Threading;
 4using MediaBrowser.Model.MediaInfo;
 5
 6namespace MediaBrowser.MediaEncoding.Subtitles
 7{
 8    /// <summary>
 9    /// JSON subtitle writer.
 10    /// </summary>
 11    public class JsonWriter : ISubtitleWriter
 12    {
 13        /// <inheritdoc />
 14        public void Write(SubtitleTrackInfo info, Stream stream, CancellationToken cancellationToken)
 15        {
 016            using (var writer = new Utf8JsonWriter(stream))
 17            {
 018                var trackevents = info.TrackEvents;
 019                writer.WriteStartObject();
 020                writer.WriteStartArray("TrackEvents");
 21
 022                for (int i = 0; i < trackevents.Count; i++)
 23                {
 024                    cancellationToken.ThrowIfCancellationRequested();
 25
 026                    var current = trackevents[i];
 027                    writer.WriteStartObject();
 28
 029                    writer.WriteString("Id", current.Id);
 030                    writer.WriteString("Text", current.Text);
 031                    writer.WriteNumber("StartPositionTicks", current.StartPositionTicks);
 032                    writer.WriteNumber("EndPositionTicks", current.EndPositionTicks);
 33
 034                    writer.WriteEndObject();
 35                }
 36
 037                writer.WriteEndArray();
 038                writer.WriteEndObject();
 39
 040                writer.Flush();
 041            }
 042        }
 43    }
 44}