public async Task AdsShouldReturnViewWithCorrectModelWithValidId()
        {
            // Arrange
            var adService = this.AdServiceMock();

            var controller = new UsersController(null, adService.Object, null, null);

            // Act
            var result = await controller.Ad(1);

            // Assert
            result.Should().BeOfType <ViewResult>();

            var adModel = result.As <ViewResult>().Model.As <AdDetailsViewModel>();

            adModel.Should().Match(c => c.As <AdDetailsViewModel>().Ad.Name == FirstUserUsername);
        }
        public async Task AdsShouldReturnNotFoundWithInvalidId()
        {
            // Arrange
            var adService = this.AdServiceMock();

            var controller = new UsersController(null, adService.Object, null, null);

            // Act
            var result = await controller.Ad(4);

            // Assert
            var redirectToActionResult = Assert.IsType <RedirectToActionResult>(result);

            result
            .Should()
            .BeOfType <RedirectToActionResult>();
            Assert.Equal("NotFoundPage", redirectToActionResult.ActionName);
        }