コード例 #1
0
        public async Task Create_WhenValidPayloadSentAndRequestSuccessful_ThenRedirectToProfileReadViewActionReturned()
        {
            var address = AddressProvider.GetPreCreationTestAddress(1);

            _mockAuthService
            .Setup(a => a.IsAuthenticated(_user))
            .Returns(true);

            _mockRepository
            .Setup(r => r.AddAsync(address))
            .ReturnsAsync(AddressProvider.GetPostCreationTestAddress(1));

            var controller = new AddressController(_mockAuthService.Object, _mockRepository.Object);

            controller.ControllerContext = new ControllerContext()
            {
                HttpContext = new DefaultHttpContext()
                {
                    User = _user
                }
            };

            var response = await controller.Create(1, address) as PartialViewResult;

            var actual = response.Model as Address;

            Assert.IsNotNull(response);
            Assert.IsInstanceOf <PartialViewResult>(response);
            Assert.That("_AddressModal", Is.EqualTo(response.ViewName));
            Assert.That(1, Is.EqualTo(actual.ClientId));
            Assert.That(address.Postcode, Is.EqualTo(actual.Postcode));
        }