Пример #1
0
        public async void FindFriend_OnUnknownPhoneNumber_NotFound(string phoneNumber)
        {
            //Arrange
            var mapperMock      = new Mock <IMapper>();
            var persistenceMock = new Mock <IFriendsPersistence>();

            persistenceMock
            .Setup(r => r.Friends
                   .FindByNameAsync(phoneNumber))
            .Returns(Task.FromResult <ApplicationUser>(null));

            var httpContextMock = new Mock <DefaultHttpContext>(null);

            httpContextMock
            .SetupGet(am => am.User.Identity.Name)
            .Returns("Somebody");

            //Act
            var controller = new FriendsController(_logger, persistenceMock.Object, mapperMock.Object);

            controller.ControllerContext.HttpContext = httpContextMock.Object;
            var respone = await controller.FindUser(phoneNumber);

            //Assert
            Assert.IsType <NotFoundResult>(respone);
        }
Пример #2
0
        public async void FindFriend_OnOkResponse_OkWithValidUserDto(string phoneNumber)
        {
            //Arrange
            var fakeUser = new ApplicationUser {
                UserName = phoneNumber
            };
            var fakeDto = new UserDto {
                Username = phoneNumber
            };

            var mapperMock = new Mock <IMapper>();

            mapperMock
            .Setup(m => m.Map <UserDto>(fakeUser))
            .Returns(fakeDto);

            var persistenceMock = new Mock <IFriendsPersistence>();

            persistenceMock
            .Setup(r => r.Friends
                   .FindByNameAsync(phoneNumber))
            .ReturnsAsync(fakeUser);

            //Act
            var controller = new FriendsController(_logger, persistenceMock.Object, mapperMock.Object);
            var respone    = await controller.FindUser(phoneNumber);

            var dto = ((OkObjectResult)respone).Value as UserDto;

            //Assert
            Assert.IsType <OkObjectResult>(respone);
            Assert.IsType <UserDto>(dto);
            Assert.Equal(phoneNumber, dto.Username);
        }
Пример #3
0
        public async void FindFriend_OnEmptyPhoneNumber_BadRequest()
        {
            //Arrange
            var mapperMock      = new Mock <IMapper>();
            var persistenceMock = new Mock <IFriendsPersistence>();


            //Act
            var controller = new FriendsController(_logger, persistenceMock.Object, mapperMock.Object);
            var response   = await controller.FindUser(string.Empty);

            //Assert
            Assert.IsType <BadRequestResult>(response);
        }