From 3011c82a0efd3812e9fb0f146dcd985957febae6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ram=C3=B3n=20Tom=C3=A1s?= Date: Tue, 27 Nov 2018 19:19:53 +0100 Subject: [PATCH] Fixed hardcoded redis connection in FunctionalTests --- .../RedisBasketRepositoryTests.cs | 64 +++++++++++-------- 1 file changed, 36 insertions(+), 28 deletions(-) diff --git a/src/Services/Basket/Basket.FunctionalTests/RedisBasketRepositoryTests.cs b/src/Services/Basket/Basket.FunctionalTests/RedisBasketRepositoryTests.cs index 123967558..84d41aa1a 100644 --- a/src/Services/Basket/Basket.FunctionalTests/RedisBasketRepositoryTests.cs +++ b/src/Services/Basket/Basket.FunctionalTests/RedisBasketRepositoryTests.cs @@ -1,5 +1,7 @@ -using Microsoft.eShopOnContainers.Services.Basket.API; +using Basket.FunctionalTests.Base; +using Microsoft.eShopOnContainers.Services.Basket.API; using Microsoft.eShopOnContainers.Services.Basket.API.Model; +using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.Logging; using Microsoft.Extensions.Options; using Moq; @@ -13,54 +15,60 @@ using Xunit; namespace Basket.FunctionalTests { public class RedisBasketRepositoryTests + : BasketScenarioBase { - private Mock> _optionsMock; - - public RedisBasketRepositoryTests() - { - _optionsMock = new Mock>(); - } [Fact] public async Task UpdateBasket_return_and_add_basket() { - var redisBasketRepository = BuildBasketRepository(); - - var basket = await redisBasketRepository.UpdateBasketAsync(new CustomerBasket("customerId") + using (var server = CreateServer()) { - BuyerId = "buyerId", - Items = BuildBasketItems() - }); + var redis = server.Host.Services.GetRequiredService(); + + var redisBasketRepository = BuildBasketRepository(redis); - Assert.NotNull(basket); - Assert.Single(basket.Items); + var basket = await redisBasketRepository.UpdateBasketAsync(new CustomerBasket("customerId") + { + BuyerId = "buyerId", + Items = BuildBasketItems() + }); + + Assert.NotNull(basket); + Assert.Single(basket.Items); + } + + } [Fact] public async Task Delete_Basket_return_null() { - var redisBasketRepository = BuildBasketRepository(); - var basket = await redisBasketRepository.UpdateBasketAsync(new CustomerBasket("customerId") + using (var server = CreateServer()) { - BuyerId = "buyerId", - Items = BuildBasketItems() - }); + var redis = server.Host.Services.GetRequiredService(); + + var redisBasketRepository = BuildBasketRepository(redis); + + var basket = await redisBasketRepository.UpdateBasketAsync(new CustomerBasket("customerId") + { + BuyerId = "buyerId", + Items = BuildBasketItems() + }); - var deleteResult = await redisBasketRepository.DeleteBasketAsync("buyerId"); + var deleteResult = await redisBasketRepository.DeleteBasketAsync("buyerId"); - var result = await redisBasketRepository.GetBasketAsync(basket.BuyerId); + var result = await redisBasketRepository.GetBasketAsync(basket.BuyerId); - Assert.True(deleteResult); - Assert.Null(result); + Assert.True(deleteResult); + Assert.Null(result); + } } - RedisBasketRepository BuildBasketRepository() + RedisBasketRepository BuildBasketRepository(ConnectionMultiplexer connMux) { var loggerFactory = new LoggerFactory(); - var configuration = ConfigurationOptions.Parse("127.0.0.1", true); - configuration.ResolveDns = true; - return new RedisBasketRepository(loggerFactory, ConnectionMultiplexer.Connect(configuration)); + return new RedisBasketRepository(loggerFactory, connMux); } List BuildBasketItems()