Example #1
0
        private string GetMessage(EAuthResult result)
        {
            switch (result)
            {
            case EAuthResult.InvalidData: return("Username or password is not entered!");

            case EAuthResult.Success: return("Authenticated successfully!");

            case EAuthResult.Unauthorized: return("Incorrect login or password!");

            default: return("");
            }
        }
        public async Task LoginTest(bool senderResult, EAuthResult expected)
        {
            //Given
            var login = "******";
            var pass  = "******";

            _validator.Setup(f => f.Validate(login))
            .Returns(true);
            _passwordValidator.Setup(f => f.Validate(pass))
            .Returns(true);
            _sender.Setup(f => f.SendAuthRequest(login, pass))
            .Returns(Task.FromResult(senderResult));

            //When
            var actual = await _interactor.Login(login, pass);

            //Then
            _validator.Verify(f => f.Validate(login), Times.Once);
            _passwordValidator.Verify(f => f.Validate(pass), Times.Once);
            _sender.Verify(f => f.SendAuthRequest(login, pass));
            Assert.AreEqual(expected, actual);
        }