Ejemplo n.º 1
0
        public void GetAllApiRequests_CanCreate_IMovieApi()
        {
            List <PropertyInfo> dbApi = typeof(IMovieDbApi)
                                        .GetProperties()
                                        .Where(x => typeof(IApiRequest).IsAssignableFrom(x.PropertyType))
                                        .Distinct()
                                        .ToList();

            Assert.AreEqual(8, dbApi.Count);

            IMovieDbApi api;

            try
            {
                api = MovieDbFactory.GetAllApiRequests();
            }
            catch (NotImplementedException)
            {
                return;
            }

            Assert.Fail($"{nameof( MovieDbFactory.GetAllApiRequests )} is not implemented.");

            // ReSharper disable HeuristicUnreachableCode
            Assert.IsNotNull(api);

            foreach (PropertyInfo pi in dbApi)
            {
                var val = pi.GetValue(api) as IApiRequest;
                Assert.IsNotNull(val);
            }
            // ReSharper restore HeuristicUnreachableCode
        }