[Test] // TODO: Works, but there seems to be some timezone issues going on public void UpdateAnime() { Assert.True(_kitsu.AddAnime(12).Result); // One Piece Assert.True(_kitsu.AddAnime(1376).Result); // Death Note Assert.True(_kitsu.AddAnime(12243).Result); // Kobayashi-san Chi no Maid Dragon Assert.True(_kitsu.AddAnime(11).Result); // Naruto var anime = _kitsu.PullAnimeList().Result; Assert.AreNotEqual(anime.Count, 0); var onepiece = anime.First(x => x.Id == 12); onepiece.UserScore = 10; onepiece.CurrentEpisode = 718; onepiece.UserStart = new DateTime(2018, 2, 8); Assert.True(_kitsu.UpdateAnime(onepiece).Result); var deathnote = anime.First(x => x.Id == 1376); deathnote.ListStatus = ApiEntry.ListStatuses.Completed; Assert.True(_kitsu.UpdateAnime(deathnote).Result); var dragonmaid = anime.First(x => x.Id == 12243); dragonmaid.ListStatus = ApiEntry.ListStatuses.Completed; dragonmaid.UserStart = dragonmaid.StartDate; dragonmaid.UserEnd = DateTime.Today.Date; dragonmaid.UserScore = 9; Assert.True(_kitsu.UpdateAnime(dragonmaid).Result); var naruto = anime.First(x => x.Id == 11); naruto.ListStatus = ApiEntry.ListStatuses.NotInList; Assert.True(_kitsu.UpdateAnime(naruto).Result); anime = _kitsu.PullAnimeList().Result; onepiece = anime.First(x => x.Id == 12); Assert.AreEqual(onepiece.UserScore, 10); Assert.AreEqual(onepiece.CurrentEpisode, 718); Assert.AreEqual(onepiece.UserStart.Date, new DateTime(2018, 2, 8).Date); deathnote = anime.First(x => x.Id == 1376); Assert.AreEqual(deathnote.ListStatus, ApiEntry.ListStatuses.Completed); dragonmaid = anime.First(x => x.Id == 12243); Assert.AreEqual(dragonmaid.ListStatus, ApiEntry.ListStatuses.Completed); Assert.AreEqual(dragonmaid.UserStart.Date, dragonmaid.StartDate.Date); Assert.AreEqual(dragonmaid.UserEnd.Date, DateTime.Today.Date); Assert.AreEqual(dragonmaid.UserScore, 9); Assert.False(anime.Exists(x => x.Id == 11)); }