public async Task ReturnBars_WithHighestAverageRating()
        {
            var barFactoryMock         = new Mock <IBarFactory>();
            var barCocktailFactoryMock = new Mock <IBarCocktailFactory>();

            var imagaUrlTest = "https://www.google.com/";
            var barTestName1 = "NameTest1";
            var barTestName2 = "NameTest2";
            var barTestName3 = "NameTest3";
            var barTestName4 = "NameTest4";

            var user = new User
            {
                Role = new Role {
                    Name = "user"
                },
                UserName = "******",
                Password = "******"
            };

            var addressTest = new Address
            {
                Name = "AddressTest",
                City = new City {
                    Name = "TestCityName"
                },
                Latitude  = 1.1,
                Longitude = 1.1
            };

            var bar1 = new Bar
            {
                Name      = barTestName1,
                ImagePath = imagaUrlTest,
                Address   = addressTest,
            };
            var bar2 = new Bar
            {
                Name      = barTestName2,
                ImagePath = imagaUrlTest,
                Address   = addressTest,
            };
            var bar3 = new Bar
            {
                Name      = barTestName3,
                ImagePath = imagaUrlTest,
                Address   = addressTest,
                IsDeleted = true
            };
            var bar4 = new Bar
            {
                Name      = barTestName4,
                ImagePath = imagaUrlTest,
                Address   = addressTest,
            };

            var allRatings = new List <BarReview>
            {
                new BarReview
                {
                    Bar    = bar1,
                    Rating = 5,
                    User   = user
                },
                new BarReview
                {
                    Bar    = bar1,
                    Rating = 4,
                    User   = user
                },
                new BarReview
                {
                    Bar    = bar2,
                    Rating = 4,
                    User   = user
                },
                new BarReview
                {
                    Bar    = bar3,
                    Rating = 5,
                    User   = user
                },
                new BarReview
                {
                    Bar    = bar4,
                    Rating = 3,
                    User   = user
                },
            };

            var options = TestUtilities.GetOptions(nameof(ReturnBars_WithHighestAverageRating));

            using (var arrangeContext = new CocktailMagicianDb(options))
            {
                arrangeContext.BarReviews.AddRange(allRatings);
                await arrangeContext.SaveChangesAsync();
            }

            using (var actContext = new CocktailMagicianDb(options))
            {
                var sut         = new BarServices(actContext, barFactoryMock.Object, barCocktailFactoryMock.Object);
                var mostPopular = await sut.GetMostPopular(2);

                Assert.AreEqual(2, mostPopular.Count());
                Assert.IsFalse(mostPopular.Any(r => r.AverageRating == 3));
                Assert.IsFalse(mostPopular.Any(r => r.AverageRating == 5));
            }
        }