Beispiel #1
0
        public void ProcessUserRegistration_VerifyNotificationNotSent_WhenUserDoesNotPrefer()
        {
            var mockUserRepository      = new Mock <IUserRepository>();
            var mockNotificationService = new Mock <INotificationEngine>();

            mockUserRepository.Setup(a => a.FindUserById(1))
            .Returns(new User()
            {
                Id = 1,
                PrefersNotifications = false,
                EmailAddress         = "*****@*****.**"
            });

            manager.Factory.AddProxyOverride <IUserRepository>(mockUserRepository.Object);
            manager.Factory.AddProxyOverride <INotificationEngine>(mockNotificationService.Object);

            // Act
            manager.ProcessUserRegistration(1);

            // Assert
            mockUserRepository.Verify(a => a.FindUserById(1), Times.Once());

            mockNotificationService.Verify(a => a.NotifyNewlyRegisteredUser(It.IsAny <User>()), Times.Never(), "The user does not prefer email notification, so do not welcome them to the site.");
        }