public async Task TestBuildMessageAsyncMembershipForm()
        {
            var model = new MembershipForm
            {
                EmailAddress   = "*****@*****.**",
                MessageType    = EmailType.MembershipForm,
                Name           = "Testing",
                PhoneNumber    = "07811111111",
                Breed          = "Something",
                DogDateOfBirth = DateTime.Now,
                DogName        = "Muttley",
                Message        = "testing"
            };

            await RunTest(model);
        }
        public async Task <IActionResult> MemberForm(MembershipForm membersForm)
        {
            try
            {
                if (!this.ModelState.IsValid)
                {
                    return(this.BadRequest(this.ModelState));
                }

                await this.emailService.Send(membersForm);

                return(this.Ok());
            }
            catch (Exception ex)
            {
                logger.Error(ex, ex.Message);
                this.ModelState.AddModelError("Send Error", "Message sending failed with an error.");

                return(this.BadRequest(this.ModelState));
            }
        }