Exemple #1
0
        public void MapFrom_Should_ReturnCorrectInstanceOfCollection_CocktailDto()
        {
            //Arrange
            var sut = new CocktailDtoMapper();

            var cocktails = new List <Cocktail>()
            {
                new Cocktail
                {
                    Id        = Guid.NewGuid(),
                    Name      = "testName",
                    Info      = "testInfo",
                    ImagePath = "testPath",
                },
                new Cocktail
                {
                    Id        = Guid.NewGuid(),
                    Name      = "testName2",
                    Info      = "testInfo2",
                    ImagePath = "testPath2",
                }
            };

            //Act
            var result = sut.MapFrom(cocktails);

            //Assert
            Assert.IsInstanceOfType(result, typeof(List <CocktailDto>));
        }
Exemple #2
0
        public void MapFrom_Should_CorrectlyMapRatingFrom_Cocktail_To_CocktailDto_WhenCollectionIsNotEmpty()
        {
            //Arrange
            var sut = new CocktailDtoMapper();

            var cocktail = new Cocktail
            {
                Id        = Guid.NewGuid(),
                Name      = "testName",
                Info      = "testInfo",
                ImagePath = "testPath",
                Ratings   = new List <CocktailRating>()
                {
                    new CocktailRating
                    {
                        Value = 4.55,
                    }
                }
            };

            //Act
            var result = sut.MapFrom(cocktail);

            //Assert
            Assert.AreEqual(result.AverageRating, 4.55);
        }
Exemple #3
0
        public void MapFromCollection_Should_ReturnCorrectCountCocktails()
        {
            //Arrange
            var sut = new CocktailDtoMapper();

            var cocktails = new List <Cocktail>()
            {
                new Cocktail
                {
                    Id        = Guid.NewGuid(),
                    Name      = "testName",
                    Info      = "testInfo",
                    ImagePath = "testPath",
                },
                new Cocktail
                {
                    Id        = Guid.NewGuid(),
                    Name      = "testName2",
                    Info      = "testInfo2",
                    ImagePath = "testPath2",
                }
            };

            //Act
            var result = sut.MapFrom(cocktails);

            //Assert
            Assert.AreEqual(2, result.Count());
        }
Exemple #4
0
        public void MapFrom_Should_CorrectlyMapIngredientsFrom_Cocktail_To_CocktailDto()
        {
            //Arrange
            var sut = new CocktailDtoMapper();

            var cocktail = new Cocktail
            {
                Id                  = Guid.NewGuid(),
                Name                = "testName",
                Info                = "testInfo",
                ImagePath           = "testPath",
                CocktailIngredients = new List <CocktailIngredient>()
                {
                    new CocktailIngredient()
                    {
                        Ingredient = new Ingredient
                        {
                            Id   = Guid.NewGuid(),
                            Name = "djodjan"
                        },
                    },
                }
            };

            //Act
            var result = sut.MapFrom(cocktail);

            //Assert
            Assert.AreEqual(result.CocktailIngredients.First(), "djodjan");
        }
Exemple #5
0
        public void ReturnCorrectInstance_OfType_ICollectionCocktailDto()
        {
            //Arrange
            var sut = new CocktailDtoMapper();

            var cocktails = new List <Cocktail>
            {
                new Cocktail
                {
                    Id   = 1,
                    Name = "TestCocktail1",
                },
                new Cocktail
                {
                    Id   = 2,
                    Name = "TestCocktail2",
                },
            };
            //Act
            var result = sut.MapDto(cocktails);

            //Assert
            Assert.IsInstanceOfType(result, typeof(ICollection <CocktailDto>));
            Assert.AreEqual(result.First().Id, cocktails[0].Id);
            Assert.AreEqual(result.First().Name, cocktails[0].Name);
            Assert.AreEqual(result.Last().Id, cocktails[1].Id);
            Assert.AreEqual(result.Last().Name, cocktails[1].Name);
        }
Exemple #6
0
        public void MapFrom_Should_ReturnCorrectInstanceOf_CocktailDto()
        {
            //Arrange
            var sut = new CocktailDtoMapper();

            var cocktail = new Cocktail
            {
                Id        = Guid.NewGuid(),
                Name      = "testName",
                Info      = "testInfo",
                ImagePath = "testPath",
            };

            //Act
            var result = sut.MapFrom(cocktail);

            //Assert
            Assert.IsInstanceOfType(result, typeof(CocktailDto));
        }
Exemple #7
0
        public void MapFrom_Should_CorrectlyMapRatingFrom_Cocktail_To_DetailsCocktailDto_WhenCollectionIsEmpty()
        {
            //Arrange
            var sut = new CocktailDtoMapper();

            var cocktail = new Cocktail
            {
                Id        = Guid.NewGuid(),
                Name      = "testName",
                Info      = "testInfo",
                ImagePath = "testPath",
            };

            //Act
            var result = sut.MapFrom(cocktail);

            //Assert
            Assert.AreEqual(result.AverageRating, 0.00);
        }
Exemple #8
0
        public void ReturnCorrectInstance_OfType_CocktailDto()
        {
            //Arrange
            var sut = new CocktailDtoMapper();

            var cocktail = new Cocktail
            {
                Id   = 1,
                Name = "TestCocktail1",
            };

            //Act
            var result = sut.MapDto(cocktail);

            //Assert

            Assert.IsInstanceOfType(result, typeof(CocktailDto));
            Assert.AreEqual(result.Id, cocktail.Id);
            Assert.AreEqual(result.Name, cocktail.Name);
        }
Exemple #9
0
        public void MapFrom_Should_CorrectlyMapFrom_Cocktail_To_CocktailDto()
        {
            //Arrange
            var sut = new CocktailDtoMapper();

            var cocktail = new Cocktail
            {
                Id        = Guid.NewGuid(),
                Name      = "testName",
                Info      = "testInfo",
                ImagePath = "testPath",
            };

            //Act
            var result = sut.MapFrom(cocktail);

            //Assert
            Assert.AreEqual(result.Id, cocktail.Id);
            Assert.AreEqual(result.Name, cocktail.Name);
            Assert.AreEqual(result.Info, cocktail.Info);
            Assert.AreEqual(result.ImagePath, cocktail.ImagePath);
        }
        public async Task CorrectlyRemoveBarsWhen_ParamsAreValid()
        {
            //Arrange
            var options = TestUtilities.GetOptions(nameof(CorrectlyRemoveBarsWhen_ParamsAreValid));
            var mapper  = new CocktailDtoMapper();

            var mapperMock                = new Mock <IDtoMapper <Cocktail, CocktailDto> >();
            var barMapperMock             = new Mock <IDtoMapper <Bar, BarDto> >();
            var cocktailDetailsMapperMock = new Mock <IDtoMapper <Cocktail, DetailsCocktailDto> >();

            var ingredientServiceMock         = new Mock <IIngredientService>();
            var cocktailIngredientServiceMock = new Mock <ICocktailIngredientService>();

            var guid    = Guid.NewGuid();
            var barGuid = Guid.NewGuid();

            var cocktail = new Cocktail
            {
                Id   = guid,
                Name = "testCocktail",
                Info = "testCocktailInfo",
            };

            var entityDto = new CocktailDto
            {
                Id   = guid,
                Name = "testCocktail",
                Info = "testInfo",
            };

            var list = new List <string> {
                "Baileys"
            };

            var bar = new Bar {
                Id = barGuid, Name = "Baileys"
            };
            var barCocktail = new BarCocktail {
                BarId = barGuid, CocktailId = cocktail.Id
            };

            mapperMock.Setup(x => x.MapFrom(It.IsAny <Cocktail>())).Returns(entityDto);

            using (var arrangeContext = new CWContext(options))
            {
                await arrangeContext.Cocktails.AddAsync(cocktail);

                await arrangeContext.Bars.AddAsync(bar);

                await arrangeContext.BarCocktails.AddAsync(barCocktail);

                await arrangeContext.SaveChangesAsync();
            }

            using (var assertContext = new CWContext(options))
            {
                //Act & Assert
                var sut = new CocktailService(assertContext, mapperMock.Object, barMapperMock.Object,
                                              cocktailDetailsMapperMock.Object, ingredientServiceMock.Object, cocktailIngredientServiceMock.Object);

                var result = await sut.RemoveBarsAsync(entityDto, list);

                var barCocktailEntity = await assertContext.BarCocktails.FirstAsync();

                Assert.IsInstanceOfType(result, typeof(CocktailDto));
                Assert.AreEqual("testCocktail", result.Name);
                Assert.AreEqual(true, barCocktailEntity.IsDeleted);
            }
        }
        public async Task ReturnCorrectTypeOfInstance()
        {
            //Arrange
            var options = TestUtilities.GetOptions(nameof(ReturnCorrectTypeOfInstance));
            var mapper  = new CocktailDtoMapper();

            var mapperMock                = new Mock <IDtoMapper <Cocktail, CocktailDto> >();
            var barMapperMock             = new Mock <IDtoMapper <Bar, BarDto> >();
            var cocktailDetailsMapperMock = new Mock <IDtoMapper <Cocktail, DetailsCocktailDto> >();

            var ingredientServiceMock         = new Mock <IIngredientService>();
            var cocktailIngredientServiceMock = new Mock <ICocktailIngredientService>();

            var guid = Guid.NewGuid();

            var cocktail = new Cocktail
            {
                Id   = guid,
                Name = "testCocktail",
                Info = "testCocktailInfo",
            };

            var entityDto = new CocktailDto
            {
                Id   = guid,
                Name = "testCocktail",
                Info = "testInfo",
            };

            var bar = new Bar
            {
                Id        = Guid.NewGuid(),
                Name      = "testBar",
                Info      = "testInfo",
                Address   = "testAddress",
                ImagePath = "testImagePath",
                Phone     = "111-333-666"
            };


            var barCocktail = new BarCocktail
            {
                Bar      = bar,
                Cocktail = cocktail
            };

            var list = new List <string>()
            {
                "testBar"
            };

            using (var actContext = new CWContext(options))
            {
                //Act
                await actContext.Bars.AddAsync(bar);

                await actContext.Cocktails.AddAsync(cocktail);

                await actContext.BarCocktails.AddAsync(barCocktail);

                await actContext.SaveChangesAsync();
            }

            using (var assertContext = new CWContext(options))
            {
                //Act & Assert
                var sut = new CocktailService(assertContext, mapperMock.Object, barMapperMock.Object,
                                              cocktailDetailsMapperMock.Object, ingredientServiceMock.Object, cocktailIngredientServiceMock.Object);
                var result = await sut.AddBarsAsync(entityDto, list);

                Assert.AreEqual(1, await assertContext.BarCocktails.CountAsync());
            }
        }