public Mock <IKodiService> GetKodiServiceMock(GetEpisodesParams parameters) { var mock = new Mock <IKodiService>(); mock.Setup(s => s.GetEpisodes(parameters, "UnitTests")) .Returns(() => MakeFauxRequest <GetEpisodesResponse>("episodes.json")); return(mock); }
public void GivenAJsonString_WhenGettingAllEpisodes_ItShouldReturnAListOfEpisodes() { var parameters = new GetEpisodesParams { Properties = new [] { EpisodeProperties.Title } }; var mock = GetKodiServiceMock(parameters); var service = mock.Object; var actual = service.GetEpisodes(parameters, "UnitTests"); var expected = Episodes.GetList(); Assert.IsInstanceOf <JsonRpcResponse <GetEpisodesResponse> >(actual); Assert.That(actual.Result.Episodes.Count, Is.EqualTo(expected.Episodes.Count)); AssertThatPropertyValuesAreEquals(actual.Result, expected); }
public void WhenGettingAllEpisodes_ItShouldReturnAListOfEpisodes() { var service = new KodiService(); var parameters = new GetEpisodesParams { Properties = new[] { EpisodeProperties.Title, EpisodeProperties.UniqueId } }; var details = service.GetEpisodes(parameters); Assert.IsNotNull(details); Assert.IsNotNull(details.Result); Assert.That(details.Result.Episodes.Count, Is.GreaterThan(0)); Assert.IsInstanceOf <List <Episode> >(details.Result.Episodes); }
public void WhenGettingAllEpisodes_WithAnTvShowIdOf1_ItShouldReturnAListOfEpisodesBelongingToTvShow() { var service = new KodiService(); var parameters = new GetEpisodesParams { TvShowId = 1, Properties = new[] { EpisodeProperties.Title, EpisodeProperties.TvShowId } }; var details = service.GetEpisodes(parameters); Assert.IsNotNull(details); Assert.IsNotNull(details.Result); Assert.IsInstanceOf <List <Episode> >(details.Result.Episodes); Assert.That(details.Result.Episodes.Find(s => s.TvShowId != 1), Is.Null); }
public void WhenGettingAllEpisodes_WithAnTvShowId1AndSeasonNumber1_ItShouldReturnAListOfEpisodesBelongingToSeason() { var service = new KodiService(); var parameters = new GetEpisodesParams { TvShowId = 1, SeasonNumber = 1, Properties = new[] { EpisodeProperties.Title, EpisodeProperties.Season } }; var details = service.GetEpisodes(parameters); Assert.IsNotNull(details); Assert.IsNotNull(details.Result); Assert.IsInstanceOf <List <Episode> >(details.Result.Episodes); Console.WriteLine(details.Result.Episodes.Find(s => s.TvShowId != 1).Title); Console.WriteLine(details.Result.Episodes.Find(s => s.TvShowId != 1).TvShowId); Assert.That(details.Result.Episodes.Find(s => s.Season != 1), Is.Null); }
public void WhenGettingAllEpisodes_WithALimitOf0And1_ItShouldReturnAListWithOneEpisode() { var service = new KodiService(); var parameters = new GetEpisodesParams { Properties = new[] { EpisodeProperties.Title, EpisodeProperties.UniqueId }, Limits = new Limits { Start = 0, End = 1 } }; var details = service.GetEpisodes(parameters); Assert.IsNotNull(details); Assert.IsNotNull(details.Result); Assert.That(details.Result.Episodes.Count, Is.EqualTo(1)); Assert.IsInstanceOf <List <Episode> >(details.Result.Episodes); }
public JsonRpcResponse <GetEpisodesResponse> GetEpisodes(GetEpisodesParams parameters, string requestId = "GetEpisodesResponse") { return(_rpcConnector.MakeRequest <GetEpisodesResponse>(KodiMethods.GetEpisodes, parameters, requestId)); }