Exemplo n.º 1
0
        public async Task <SimpleResponse <Member> > Handle(GetMemberByEmailQuery request,
                                                            CancellationToken cancellationToken)
        {
            var member = await _memberService.GetMemberByEmail(request.Email);

            if (member == null)
            {
                throw new BusinessException("Cannot find member for email {email}",
                                            BusinessErrors.ResourceNotFound("member", "Email is not found"),
                                            request.Email);
            }
            return(SimpleResponse <Member> .Create(member));
        }
        public void GivenSignUpMemberValidator_WhenCallValidate_IfEmailHasInvalidFormat_ShouldFail(
            string email)
        {
            // assign
            var command = new GetMemberByEmailQuery()
            {
                Email = email
            };

            // act
            var result = _validator.TestValidate(command);

            // assert
            result.ShouldHaveValidationErrorFor(c => c.Email)
            .WithErrorMessage(string.Format(ValidationTokens.InvalidEmailFormat, ValidationTokens.MemberEmail));
        }
Exemplo n.º 3
0
        public async Task GivenGetMemberByEmailHandler_WhenCallHandle_ShouldReturn()
        {
            // assign
            var query = new GetMemberByEmailQuery()
            {
                Email = "*****@*****.**"
            };
            var member = MemberDataBuilder.CreateMember(1, null, null, null);

            _memberService.GetMemberByEmail(query.Email).Returns(member);

            // act
            var response = await _getMemberByEmailHandler.Handle(query, CancellationToken.None);

            // assert

            response.ShouldNotBeNull();
            response.Data.ShouldBe(member);
        }