public async void SignInTest_AlwaysReturnsA200()
        {
            Requests.SignIn request = new Requests.SignIn
            {
                Credential = "*****@*****.**",
                Password   = "******",
            };

            List <UserGenre> genres = new List <UserGenre>()
            {
            };
            List <UserVenue> venues = new List <UserVenue>()
            {
            };

            ApplicationUser returnedUser = new ApplicationUser
            {
                Genres      = genres,
                Venues      = venues,
                Name        = "Test Name",
                Picture     = "Test picture",
                Bio         = "Test Bio",
                LookingFor  = "Test Looking For",
                Lat         = 50,
                Lon         = 23,
                MatchRadius = 40,
            };

            signInRepository.Setup(x => x.SignIn(It.IsAny <string>(), It.IsAny <string>())).ReturnsAsync(returnedUser);

            ObjectResult result = await subject.SignIn(request);

            Assert.Equal(200, result.StatusCode);
        }
        public async void SignInTest_AlwaysReturnsA_400ONullRequest()
        {
            Requests.SignIn request = null;

            ObjectResult result = await subject.SignIn(request);

            Assert.Equal(400, result.StatusCode);
        }
        public async Task SignInTest_SignInRepository_SignIn_IsCalledOnce()
        {
            Requests.SignIn request = new Requests.SignIn
            {
                Credential = "*****@*****.**",
                Password   = "******"
            };

            signInRepository.Setup(x => x.SignIn(It.IsAny <string>(), It.IsAny <string>()));

            ObjectResult result = await subject.SignIn(request);

            signInRepository.Verify(x => x.SignIn(request.Credential, request.Password), Times.Once);
        }
Пример #4
0
        public async Task <ObjectResult> SignIn(Requests.SignIn request)
        {
            if (request == null)
            {
                return(NoRequest());
            }

            ApplicationUser?user = await signInRepository.SignIn(request.Credential, request.Password).ConfigureAwait(false);

            if (user == null)
            {
                return(Unauthorized("Incorrect Username or Password"));
            }

            return(Ok(new Responses.UserLoggedIn
            {
                UserId = user.Id,
                Username = user.UserName,
                Name = user.Name
            }));
        }