public void GetExpenses() { var client = new HttpClient(); client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Token", "Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1bmlxdWVfbmFtZSI6IjQ4MDZhYWVmLTJmNjctNGY3Yy0yYjdiLTA4ZDdiNTE3MGEzMyIsIm5iZiI6MTU4MjEwMTQ4NywiZXhwIjoxNTgyMTA0MTg3LCJpYXQiOjE1ODIxMDE0ODd9.m-zrNriR1RqSF6pchSBbQ_noiIaNeVSfmixUgyrFqik"); var expense = new ExpensesViewModel { Title = "mock Expenses", Price = 20 }; var expenseDTO = new ExpensesDTO { Title = "mock Expenses", Price = 20 }; int userId = 1; var mockMapper = new Mock <IMapper>(); mockMapper.Setup(repo => repo.Map(expense, expenseDTO)) .Returns(expenseDTO); mockMapper.Setup(repo => repo.Map(expenseDTO, expense)) .Returns(expense); List <ExpensesDTO> expensesList = new List <ExpensesDTO>(); var mockRepo = new Mock <IExpensesService>(); mockRepo.Setup(repo => repo.GetExpensesAsync(userId)) .ReturnsAsync(expensesList); var mockExceptionREpo = new Mock <IExceptionHandler>(); var controller = new ExpensesController(mockRepo.Object, mockExceptionREpo.Object, mockMapper.Object); // Act var okResult = controller.GetExpenses(userId).Result; // Assert Assert.IsType <OkObjectResult>(okResult); }
public async Task TestGetExpenses() { var result = await _controller.GetExpenses(); var expectedResult = _data.Where(d => d.ApplicationUserID == _user.Id).ToList(); ValidateResult(expectedResult, result.ToList()); }
public async Task GetExpenses_WhenCalled_GivesListOfExpeses() { var repo = new Mock <IExpenseRepository>(); var mapper = new Mock <IMapper>(); var controller = new ExpensesController(mapper.Object, repo.Object); var list = await controller.GetExpenses(1); repo.Verify(r => r.GetExpenses(1)); }
public async Task GetExpenses_ShouldReturnEnumerableOfViewModelType(Guid userId) { _controller.HttpContext.User = new ClaimsPrincipal(new List <ClaimsIdentity>() { new ClaimsIdentity(new List <Claim>() { new Claim("id", userId.ToString()) }) }); var result = await _controller.GetExpenses(CancellationToken.None); Assert.IsType(typeof(OkObjectResult), result.Result); Assert.IsAssignableFrom(typeof(IEnumerable <ExpenseViewModel>), (result.Result as OkObjectResult).Value); }
public async Task GetExpensesTest() { var mockRepo = new Mock <IExpenseRepository>(MockBehavior.Strict); mockRepo.Setup(repo => repo.ListAsync()) .ReturnsAsync(GetTestExpenses()); var controller = new ExpensesController(mockRepo.Object, _loggerManager, _mapper); var result = await controller.GetExpenses(); var okResult = Assert.IsType <OkObjectResult>(result.Result); var model = Assert.IsAssignableFrom <IEnumerable <ExpenseDto> >(okResult.Value); Assert.Equal(2, model.Count()); }
public async void GetExpenses_ReturnsZeroItems_WhenDBIsEmpty() { //Arrange //DBContext var optionsBuilder = new DbContextOptionsBuilder <ExpenseContext>(); optionsBuilder.UseInMemoryDatabase("UnitTestInMemBD"); var dbContext = new ExpenseContext(optionsBuilder.Options); var expenseRepo = new ExpenseRepository(dbContext); //Controller var controller = new ExpensesController(expenseRepo, null); //Act var result = await controller.GetExpenses(); //Assert Assert.Empty(result.Value); }
public async void GetExpenses_ReturnsTwoItems_WhenDBIsNotEmpty() { //Arrange //DBContext var optionsBuilder = new DbContextOptionsBuilder <ExpenseContext>(); optionsBuilder.UseInMemoryDatabase("UnitTestInMemBD2"); var dbContext = new ExpenseContext(optionsBuilder.Options); dbContext.Add(new Expense() { Amount = 88.49f, Currency = Currency.EUR, Description = "Skateboard trucks" }); dbContext.Add(new Expense() { Amount = 49.99f, Currency = Currency.EUR, Description = "Skateboard deck" }); dbContext.SaveChanges(); var expenseRepo = new ExpenseRepository(dbContext); //Controller var controller = new ExpensesController(expenseRepo); //Act var result = await controller.GetExpenses(); //Assert Assert.Equal(2, result.Value.Count); }