public async Task CreateSmsCode(CreateSmsCodeInput input)
        {
            //---------------请结合以下内容编写实现(勿删)---------------
            // 验证码长度为4,60s内不得重复发送。
            // 验证码10分钟内有效。
            //------------------------------------------------------

            await _smsVerificationCodeManager.CreateAndSendVerificationMessage(input.PhoneNumber,
                                                                               input.SmsCodeType.ToString(), 60, Clock.Now.AddMinutes(10));
        }
Пример #2
0
        public async Task CreateSmsCode_Test(string phone, CreateSmsCodeInput.SmsCodeTypeEnum smsCodeType)
        {
            //---------------请结合以下要点编写单元测试(勿删)---------------
            // 验证码长度为4,60s内不得重复发送
            //---------------------------------------------------------
            var input = new CreateSmsCodeInput()
            {
                PhoneNumber = phone,
                SmsCodeType = smsCodeType,
            };

            if (string.IsNullOrWhiteSpace(phone))
            {
                await Assert.ThrowsAsync <AbpValidationException>(async() => await smSCodeAppService.CreateSmsCode(input: input));
            }
            else
            {
                await smSCodeAppService.CreateSmsCode(input);

                //重复验证
                await Assert.ThrowsAsync <UserFriendlyException>(async() => await smSCodeAppService.CreateSmsCode(input: input));
            }
        }