public void GetNumberOfRatesByReviewerTest(int reviewer, int rate, int expected)
        {
            Mock <IRatingRepositoryFile> repo = new Mock <IRatingRepositoryFile>();
            List <Rating> ratings             = new List <Rating> {
                new Rating {
                    Reviewer = 123, Movie = 321, Grade = 2, Date = DateTime.Now
                },
                new Rating {
                    Reviewer = 123, Movie = 456, Grade = 2, Date = DateTime.Now
                },
                new Rating {
                    Reviewer = 103, Movie = 456, Grade = 2, Date = DateTime.Now
                }
            };

            repo.Setup(r => r.GetAll()).Returns(() => ratings);
            IRatingService service = new RatingServiceFile(repo.Object);

            repo.Verify(m => m.GetAll(), Times.Once);


            var actual = service.GetNumberOfRatesByReviewer(reviewer, rate);


            Assert.Equal(expected, actual);
        }
        public void GetMoviesWithHighestNumberOfTopRatesTest()
        {
            Mock <IRatingRepositoryFile> repo = new Mock <IRatingRepositoryFile>();
            List <Rating> ratings             = new List <Rating> {
                new Rating {
                    Reviewer = 123, Movie = 321, Grade = 5, Date = DateTime.Now
                },
                new Rating {
                    Reviewer = 123, Movie = 496, Grade = 4, Date = DateTime.Now
                },
                new Rating {
                    Reviewer = 103, Movie = 321, Grade = 5, Date = DateTime.Now
                },
                new Rating {
                    Reviewer = 113, Movie = 496, Grade = 4, Date = DateTime.Now
                }
            };

            repo.Setup(r => r.GetAll()).Returns(() => ratings);
            IRatingService service = new RatingServiceFile(repo.Object);

            repo.Verify(m => m.GetAll(), Times.Once);

            List <int> actual   = service.GetMoviesWithHighestNumberOfTopRates();
            List <int> expected = new List <int>()
            {
                321, 496
            };

            Assert.Equal(expected, actual);
        }
Exemplo n.º 3
0
        static void Main(string[] args)
        {
            var            choose  = false;
            IRatingService service = null;

            Console.WriteLine("Select dataset by enetring number");
            Console.WriteLine("1. SQL");
            Console.WriteLine("2. Json");
            while (!choose)
            {
                var read = Console.ReadLine();
                switch (read)
                {
                default:
                    Console.WriteLine("not recognized try again");
                    break;

                case "1":
                    Console.WriteLine("SQL was selected");
                    service = new RatingService(new RatingSQLRepository());
                    choose  = true;
                    break;

                case "2":
                    Console.WriteLine("Json was selected");
                    service = new RatingServiceFile(new RatingsRepository());
                    choose  = true;
                    break;
                }

                new Menu(service);
            }
        }
        public void GetNumberOfReviewsTest(int movie, int expected)
        {
            Mock <IRatingRepositoryFile> repo = new Mock <IRatingRepositoryFile>();
            List <Rating> ratings             = new List <Rating> {
                new Rating {
                    Reviewer = 123, Movie = 321, Grade = 4, Date = DateTime.Now
                },
                new Rating {
                    Reviewer = 456, Movie = 321, Grade = 2, Date = DateTime.Now
                },
                new Rating {
                    Reviewer = 865, Movie = 154, Grade = 4, Date = DateTime.Now
                },
                new Rating {
                    Reviewer = 876, Movie = 154, Grade = 5, Date = DateTime.Now
                },
                new Rating {
                    Reviewer = 244, Movie = 154, Grade = 5, Date = DateTime.Now
                },
                new Rating {
                    Reviewer = 875, Movie = 154, Grade = 5, Date = DateTime.Now
                },
                new Rating {
                    Reviewer = 957, Movie = 790, Grade = 5, Date = DateTime.Now
                },
                new Rating {
                    Reviewer = 896, Movie = 790, Grade = 5, Date = DateTime.Now
                },
                new Rating {
                    Reviewer = 967, Movie = 790, Grade = 5, Date = DateTime.Now
                }
            };

            repo.Setup(r => r.GetAll()).Returns(() => ratings);
            IRatingService service = new RatingServiceFile(repo.Object);

            repo.Verify(m => m.GetAll(), Times.Once);

            var actual = service.GetNumberOfReviews(movie);


            Assert.Equal(expected, actual);
        }
        public void GetReviewersByMovieTest()
        {
            Mock <IRatingRepositoryFile> repo = new Mock <IRatingRepositoryFile>();
            List <Rating> ratings             = new List <Rating> {
                new Rating {
                    Reviewer = 123, Movie = 321, Grade = 4, Date = DateTime.Now
                },
                new Rating {
                    Reviewer = 123, Movie = 476, Grade = 2, Date = DateTime.Now
                },
                new Rating {
                    Reviewer = 123, Movie = 322, Grade = 5, Date = DateTime.Now
                },
                new Rating {
                    Reviewer = 103, Movie = 321, Grade = 1, Date = DateTime.Now
                },
                new Rating {
                    Reviewer = 103, Movie = 425, Grade = 5, Date = DateTime.Now
                },
                new Rating {
                    Reviewer = 103, Movie = 424, Grade = 4, Date = DateTime.Now
                },
                new Rating {
                    Reviewer = 113, Movie = 321, Grade = 4, Date = DateTime.Now
                }
            };

            repo.Setup(r => r.GetAll()).Returns(() => ratings);
            IRatingService service = new RatingServiceFile(repo.Object);

            repo.Verify(m => m.GetAll(), Times.Once);

            List <int> actual = service.GetReviewersByMovie(321);

            List <int> expected = new List <int>()
            {
                123, 103, 113
            };


            Assert.Equal(expected, actual);
        }
        public void GetAverageRateOfMovieTest()
        {
            Mock <IRatingRepositoryFile> repo = new Mock <IRatingRepositoryFile>();
            List <Rating> ratings             = new List <Rating> {
                new Rating {
                    Reviewer = 123, Movie = 321, Grade = 4, Date = DateTime.Now
                },
                new Rating {
                    Reviewer = 124, Movie = 321, Grade = 2, Date = DateTime.Now
                }
            };

            repo.Setup(r => r.GetAll()).Returns(() => ratings);
            IRatingService service = new RatingServiceFile(repo.Object);

            repo.Verify(m => m.GetAll(), Times.Once);

            var expected = 3;
            var actual   = service.GetAverageRateOfMovie(321);


            Assert.Equal(expected, actual);
        }