public override async Task <ITraktMovieIds> ReadObjectAsync(JsonTextReader jsonReader, CancellationToken cancellationToken = default) { CheckJsonTextReader(jsonReader); if (await jsonReader.ReadAsync(cancellationToken) && jsonReader.TokenType == JsonToken.StartObject) { ITraktMovieIds traktMovieIds = new TraktMovieIds(); while (await jsonReader.ReadAsync(cancellationToken) && jsonReader.TokenType == JsonToken.PropertyName) { var propertyName = jsonReader.Value.ToString(); switch (propertyName) { case JsonProperties.PROPERTY_NAME_TRAKT: { var value = await JsonReaderHelper.ReadUnsignedIntegerValueAsync(jsonReader, cancellationToken); if (value.First) { traktMovieIds.Trakt = value.Second; } break; } case JsonProperties.PROPERTY_NAME_SLUG: traktMovieIds.Slug = await jsonReader.ReadAsStringAsync(cancellationToken); break; case JsonProperties.PROPERTY_NAME_IMDB: traktMovieIds.Imdb = await jsonReader.ReadAsStringAsync(cancellationToken); break; case JsonProperties.PROPERTY_NAME_TMDB: { var value = await JsonReaderHelper.ReadUnsignedIntegerValueAsync(jsonReader, cancellationToken); if (value.First) { traktMovieIds.Tmdb = value.Second; } break; } default: await JsonReaderHelper.ReadAndIgnoreInvalidContentAsync(jsonReader, cancellationToken); break; } } return(traktMovieIds); } return(await Task.FromResult(default(ITraktMovieIds))); }
public void Test_TraktMovieIds_Default_Constructor() { var movieIds = new TraktMovieIds(); movieIds.Trakt.Should().Be(0); movieIds.Slug.Should().BeNullOrEmpty(); movieIds.Imdb.Should().BeNullOrEmpty(); movieIds.Tmdb.Should().BeNull(); movieIds.HasAnyId.Should().BeFalse(); }
public void Test_TraktMovieIds_HasAnyId() { var movieIds = new TraktMovieIds { Trakt = 1 }; movieIds.HasAnyId.Should().BeTrue(); movieIds = new TraktMovieIds { Slug = "slug" }; movieIds.HasAnyId.Should().BeTrue(); movieIds = new TraktMovieIds { Imdb = "imdb" }; movieIds.HasAnyId.Should().BeTrue(); movieIds = new TraktMovieIds { Tmdb = 1 }; movieIds.HasAnyId.Should().BeTrue(); }
public void Test_TraktMovieIds_GetBestId() { var movieIds = new TraktMovieIds(); var bestId = movieIds.GetBestId(); bestId.Should().NotBeNull().And.BeEmpty(); movieIds = new TraktMovieIds { Trakt = 1 }; bestId = movieIds.GetBestId(); bestId.Should().Be("1"); movieIds = new TraktMovieIds { Slug = "slug" }; bestId = movieIds.GetBestId(); bestId.Should().Be("slug"); movieIds = new TraktMovieIds { Imdb = "imdb" }; bestId = movieIds.GetBestId(); bestId.Should().Be("imdb"); movieIds = new TraktMovieIds { Tmdb = 1 }; bestId = movieIds.GetBestId(); bestId.Should().Be("1"); movieIds = new TraktMovieIds { Trakt = 1, Slug = "slug", Imdb = "imdb", Tmdb = 1 }; bestId = movieIds.GetBestId(); bestId.Should().Be("1"); movieIds = new TraktMovieIds { Slug = "slug", Imdb = "imdb", Tmdb = 1 }; bestId = movieIds.GetBestId(); bestId.Should().Be("slug"); movieIds = new TraktMovieIds { Imdb = "imdb", Tmdb = 1 }; bestId = movieIds.GetBestId(); bestId.Should().Be("imdb"); }