Ejemplo n.º 1
0
        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);
        }
Ejemplo n.º 2
0
        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);
        }
Ejemplo n.º 3
0
        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);
        }
Ejemplo n.º 4
0
        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);
        }
Ejemplo n.º 5
0
        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);
        }
Ejemplo n.º 6
0
        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);
        }
Ejemplo n.º 7
0
 public JsonRpcResponse <GetEpisodesResponse> GetEpisodes(GetEpisodesParams parameters, string requestId = "GetEpisodesResponse")
 {
     return(_rpcConnector.MakeRequest <GetEpisodesResponse>(KodiMethods.GetEpisodes, parameters, requestId));
 }