public void Test_TraktSyncPlaybackProgressItem_Default_Constructor() { var playbackProgressItem = new TraktSyncPlaybackProgressItem(); playbackProgressItem.Id.Should().Be(0U); playbackProgressItem.Progress.Should().NotHaveValue(); playbackProgressItem.PausedAt.Should().NotHaveValue(); playbackProgressItem.Type.Should().BeNull(); playbackProgressItem.Movie.Should().BeNull(); playbackProgressItem.Episode.Should().BeNull(); playbackProgressItem.Show.Should().BeNull(); }
public void TestTraktSyncPlaybackProgressItemDefaultConstructor() { var playbackProgress = new TraktSyncPlaybackProgressItem(); playbackProgress.Progress.Should().NotHaveValue(); playbackProgress.PausedAt.Should().NotHaveValue(); playbackProgress.Id.Should().Be(0); playbackProgress.Type.Should().BeNull(); playbackProgress.Movie.Should().BeNull(); playbackProgress.Episode.Should().BeNull(); playbackProgress.Show.Should().BeNull(); }
public override async Task <ITraktSyncPlaybackProgressItem> ReadObjectAsync(JsonTextReader jsonReader, CancellationToken cancellationToken = default) { CheckJsonTextReader(jsonReader); if (await jsonReader.ReadAsync(cancellationToken) && jsonReader.TokenType == JsonToken.StartObject) { var movieObjectReader = new MovieObjectJsonReader(); var showObjectReader = new ShowObjectJsonReader(); var episodeObjectReader = new EpisodeObjectJsonReader(); ITraktSyncPlaybackProgressItem traktPlaybackProgressItem = new TraktSyncPlaybackProgressItem(); while (await jsonReader.ReadAsync(cancellationToken) && jsonReader.TokenType == JsonToken.PropertyName) { var propertyName = jsonReader.Value.ToString(); switch (propertyName) { case JsonProperties.PROPERTY_NAME_ID: { var value = await JsonReaderHelper.ReadUnsignedIntegerValueAsync(jsonReader, cancellationToken); if (value.First) { traktPlaybackProgressItem.Id = value.Second; } break; } case JsonProperties.PROPERTY_NAME_PROGRESS: { var value = await JsonReaderHelper.ReadFloatValueAsync(jsonReader, cancellationToken); if (value.First) { traktPlaybackProgressItem.Progress = value.Second; } break; } case JsonProperties.PROPERTY_NAME_PAUSED_AT: { var value = await JsonReaderHelper.ReadDateTimeValueAsync(jsonReader, cancellationToken); if (value.First) { traktPlaybackProgressItem.PausedAt = value.Second; } break; } case JsonProperties.PROPERTY_NAME_TYPE: traktPlaybackProgressItem.Type = await JsonReaderHelper.ReadEnumerationValueAsync <TraktSyncType>(jsonReader, cancellationToken); break; case JsonProperties.PROPERTY_NAME_MOVIE: traktPlaybackProgressItem.Movie = await movieObjectReader.ReadObjectAsync(jsonReader, cancellationToken); break; case JsonProperties.PROPERTY_NAME_SHOW: traktPlaybackProgressItem.Show = await showObjectReader.ReadObjectAsync(jsonReader, cancellationToken); break; case JsonProperties.PROPERTY_NAME_EPISODE: traktPlaybackProgressItem.Episode = await episodeObjectReader.ReadObjectAsync(jsonReader, cancellationToken); break; default: await JsonReaderHelper.ReadAndIgnoreInvalidContentAsync(jsonReader, cancellationToken); break; } } return(traktPlaybackProgressItem); } return(await Task.FromResult(default(ITraktSyncPlaybackProgressItem))); }