Ejemplo n.º 1
0
        public async Task <MyUserProfileMold> Get(GetMyProfile request)
        {
            var session = Request.ThrowIfUnauthorized();

            var uid = session?.UserAuthId;

            if (uid == null)
            {
                throw new HttpError(HttpStatusCode.Unauthorized);
            }

            var me = await GetUserById(uid);

            if (me == null)
            {
                throw new HttpError(HttpStatusCode.NotFound);
            }

            var secret = await GetUserSecret(uid);

            var profile = Mapper.Map <MyUserProfileMold>(me);

            profile.IsPasswordSetted = secret?.Password != null;

            return(profile);
        }
Ejemplo n.º 2
0
        public async Task Should_Revoke_AccessToken()
        {
            //arrange
            var(fakeUser, sut, userRepository, _) = Arrange();
            userRepository.GetAsync(Arg.Any <Guid>()).ReturnsForAnyArgs(fakeUser);
            var getMyProfile = new GetMyProfile(fakeUser.Id);

            //act
            var result = await sut.Handle(getMyProfile, new CancellationToken());

            //assert
            result.Id.Should().NotBeEmpty();
            result.Id.Should().Be(fakeUser.Id);
            result.Nickname.Should().NotBeEmpty();
            result.Nickname.Should().Be(fakeUser.Nickname);
            result.Email.Should().NotBeEmpty();
            result.Email.Should().Be(fakeUser.Email);
            result.Email.Should().Contain("@");
            result.Email.Should().Be(fakeUser.Email);
            result.Role.Should().NotBeEmpty();
            result.Role.Should().Be(fakeUser.Role);
            result.CreatedAt.Should().BeCloseTo(DateTime.UtcNow, TimeSpan.FromSeconds(5));
            result.CreatedAt.Should().Be(fakeUser.CreatedAt);
            result.UpdatedAt.Should().BeCloseTo(DateTime.UtcNow, TimeSpan.FromSeconds(5));
            result.UpdatedAt.Should().Be(fakeUser.UpdatedAt);
        }
Ejemplo n.º 3
0
        public async Task <IActionResult> GetAsync()
        {
            var query = new GetMyProfile(UserId);

            var users = await _mediator.Send(query);

            return(Ok(users));
        }