本文整理汇总了C#中AllReady.Controllers.AccountController.Register方法的典型用法代码示例。如果您正苦于以下问题:C# AccountController.Register方法的具体用法?C# AccountController.Register怎么用?C# AccountController.Register使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类AllReady.Controllers.AccountController
的用法示例。
在下文中一共展示了AccountController.Register方法的7个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: RegisterPostReturnsTheSameViewAndViewModel_WhenUserCreationFails
public async Task RegisterPostReturnsTheSameViewAndViewModel_WhenUserCreationFails()
{
var model = new RegisterViewModel();
var generalSettings = new Mock<IOptions<GeneralSettings>>();
generalSettings.Setup(x => x.Value).Returns(new GeneralSettings());
var userManager = CreateUserManagerMock();
userManager.Setup(x => x.CreateAsync(It.IsAny<ApplicationUser>(), It.IsAny<string>())).Returns(() => Task.FromResult(IdentityResult.Failed()));
var sut = new AccountController(userManager.Object, null, generalSettings.Object, null, null);
var result = await sut.Register(model) as ViewResult;
var modelResult = result.ViewData.Model as RegisterViewModel;
Assert.IsType<ViewResult>(result);
Assert.IsType<RegisterViewModel>(modelResult);
Assert.Same(model, modelResult);
}
示例2: RegisterPostRedirectsToCorrectActionAndController_WhenModelStateIsValid_AndUserCreationIsSuccessful
public async Task RegisterPostRedirectsToCorrectActionAndController_WhenModelStateIsValid_AndUserCreationIsSuccessful()
{
var generalSettings = new Mock<IOptions<GeneralSettings>>();
generalSettings.Setup(x => x.Value).Returns(new GeneralSettings());
var userManager = CreateUserManagerMock();
userManager.Setup(x => x.CreateAsync(It.IsAny<ApplicationUser>(), It.IsAny<string>())).Returns(() => Task.FromResult(IdentityResult.Success));
userManager.Setup(x => x.GenerateEmailConfirmationTokenAsync(It.IsAny<ApplicationUser>())).Returns(() => Task.FromResult(It.IsAny<string>()));
userManager.Setup(x => x.GenerateChangePhoneNumberTokenAsync(It.IsAny<ApplicationUser>(), It.IsAny<string>())).Returns(() => Task.FromResult(It.IsAny<string>()));
var signInManager = CreateSignInManagerMock(userManager);
var urlHelper = new Mock<IUrlHelper>();
urlHelper.Setup(x => x.Action(It.IsAny<UrlActionContext>())).Returns(It.IsAny<string>());
userManager.Setup(x => x.AddClaimAsync(It.IsAny<ApplicationUser>(), It.IsAny<Claim>())).Returns(() => Task.FromResult(IdentityResult.Success));
signInManager.Setup(x => x.SignInAsync(It.IsAny<ApplicationUser>(), It.IsAny<bool>(), null)).Returns(() => Task.FromResult(It.IsAny<Task>()));
var sut = new AccountController(userManager.Object, signInManager.Object, generalSettings.Object, Mock.Of<IMediator>(), null);
sut.SetFakeHttpRequestSchemeTo(It.IsAny<string>());
sut.Url = urlHelper.Object;
var result = await sut.Register(new RegisterViewModel()) as RedirectToActionResult;
Assert.Equal(result.ActionName, nameof(HomeController.Index));
Assert.Equal(result.ControllerName, "Home");
}
示例3: RegisterPostAddsIdentityResultErrorsToModelStateError_WhenUserCreationFails
public async Task RegisterPostAddsIdentityResultErrorsToModelStateError_WhenUserCreationFails()
{
var generalSettings = new Mock<IOptions<GeneralSettings>>();
generalSettings.Setup(x => x.Value).Returns(new GeneralSettings());
var identityResult = IdentityResult.Failed(new IdentityError { Description = "IdentityErrorDescription" });
var userManager = CreateUserManagerMock();
userManager.Setup(x => x.CreateAsync(It.IsAny<ApplicationUser>(), It.IsAny<string>())).Returns(() => Task.FromResult(identityResult));
var sut = new AccountController(userManager.Object, null, generalSettings.Object, null, null);
await sut.Register(new RegisterViewModel());
var errorMessages = sut.ModelState.GetErrorMessages();
Assert.Equal(errorMessages.Single(), identityResult.Errors.Select(x => x.Description).Single());
}
示例4: CreateUserManagerMock
public async Task RegisterPostInvokesSignInAsyncWithTheCorrectParameters_WhenModelStateIsValid_AndUserCreationIsSuccessful()
{
const string defaultTimeZone = "DefaultTimeZone";
var model = new RegisterViewModel { Email = "email" };
var generalSettings = new Mock<IOptions<GeneralSettings>>();
generalSettings.Setup(x => x.Value).Returns(new GeneralSettings { DefaultTimeZone = defaultTimeZone });
var userManager = CreateUserManagerMock();
userManager.Setup(x => x.CreateAsync(It.IsAny<ApplicationUser>(), It.IsAny<string>())).Returns(() => Task.FromResult(IdentityResult.Success));
userManager.Setup(x => x.GenerateEmailConfirmationTokenAsync(It.IsAny<ApplicationUser>())).Returns(() => Task.FromResult(It.IsAny<string>()));
userManager.Setup(x => x.GenerateChangePhoneNumberTokenAsync(It.IsAny<ApplicationUser>(), It.IsAny<string>())).Returns(() => Task.FromResult(It.IsAny<string>()));
var signInManager = CreateSignInManagerMock(userManager);
var urlHelper = new Mock<IUrlHelper>();
urlHelper.Setup(x => x.Action(It.IsAny<UrlActionContext>())).Returns(It.IsAny<string>());
userManager.Setup(x => x.AddClaimAsync(It.IsAny<ApplicationUser>(), It.IsAny<Claim>())).Returns(() => Task.FromResult(IdentityResult.Success));
var sut = new AccountController(userManager.Object, signInManager.Object, generalSettings.Object, Mock.Of<IMediator>(), null);
sut.SetFakeHttpRequestSchemeTo(It.IsAny<string>());
sut.Url = urlHelper.Object;
await sut.Register(model);
signInManager.Verify(x => x.SignInAsync(It.Is<ApplicationUser>(au =>
au.UserName == model.Email &&
au.Email == model.Email &&
au.TimeZoneId == defaultTimeZone),
It.IsAny<bool>(), null), Times.Once);
}
示例5: GeneralSettings
public async Task RegisterPostSendsSendConfirmAccountEmailWithTheCorrectParameters_WhenModelStateIsValid_AndUserCreationIsSuccessful()
{
const string callbackUrl = "callbackUrl";
var model = new RegisterViewModel { Email = "email" };
var generalSettings = new Mock<IOptions<GeneralSettings>>();
generalSettings.Setup(x => x.Value).Returns(new GeneralSettings());
var userManager = CreateUserManagerMock();
userManager.Setup(x => x.CreateAsync(It.IsAny<ApplicationUser>(), It.IsAny<string>())).Returns(() => Task.FromResult(IdentityResult.Success));
userManager.Setup(x => x.GenerateEmailConfirmationTokenAsync(It.IsAny<ApplicationUser>())).Returns(() => Task.FromResult(It.IsAny<string>()));
userManager.Setup(x => x.GenerateChangePhoneNumberTokenAsync(It.IsAny<ApplicationUser>(), It.IsAny<string>())).Returns(() => Task.FromResult(It.IsAny<string>()));
var signInManager = CreateSignInManagerMock(userManager);
var urlHelper = new Mock<IUrlHelper>();
urlHelper.Setup(x => x.Action(It.IsAny<UrlActionContext>())).Returns(callbackUrl);
var mediator = new Mock<IMediator>();
var sut = new AccountController(userManager.Object, signInManager.Object, generalSettings.Object, mediator.Object, null);
sut.SetFakeHttpRequestSchemeTo(It.IsAny<string>());
sut.Url = urlHelper.Object;
await sut.Register(model);
mediator.Verify(x => x.SendAsync(It.Is<SendConfirmAccountEmail>(y => y.Email == model.Email && y.CallbackUrl == callbackUrl)), Times.Once);
}
示例6: RegisterPostInvokesCreateAsyncWithTheCorrectParameters_WhenModelStateIsValid
public async Task RegisterPostInvokesCreateAsyncWithTheCorrectParameters_WhenModelStateIsValid()
{
const string defaultTimeZone = "DefaultTimeZone";
var model = new RegisterViewModel { Email = "email", Password = "Password" };
var generalSettings = new Mock<IOptions<GeneralSettings>>();
generalSettings.Setup(x => x.Value).Returns(new GeneralSettings { DefaultTimeZone = defaultTimeZone });
var userManager = CreateUserManagerMock();
userManager.Setup(x => x.CreateAsync(It.IsAny<ApplicationUser>(), It.IsAny<string>())).Returns(() => Task.FromResult(IdentityResult.Failed()));
var sut = new AccountController(userManager.Object, null, generalSettings.Object, null, null);
await sut.Register(model);
userManager.Verify(x => x.CreateAsync(It.Is<ApplicationUser>(au =>
au.UserName == model.Email &&
au.Email == model.Email &&
au.TimeZoneId == defaultTimeZone),
model.Password), Times.Once);
}
示例7: CreateUserManagerMock
public async Task RegisterPostInvokesGenerateEmailConfirmationTokenAsyncWithTheCorrectParametersWhenModelStateIsValidAndUserCreationIsSuccessful()
{
const string defaultTimeZone = "DefaultTimeZone";
var model = new RegisterViewModel { Email = "email", Password = "Password" };
var generalSettings = new Mock<IOptions<GeneralSettings>>();
generalSettings.Setup(x => x.Value).Returns(new GeneralSettings { DefaultTimeZone = defaultTimeZone });
var userManager = CreateUserManagerMock();
userManager.Setup(x => x.CreateAsync(It.IsAny<ApplicationUser>(), It.IsAny<string>())).Returns(() => Task.FromResult(IdentityResult.Success));
var signInManager = CreateSignInManagerMock(userManager);
var emailSenderMock = new Mock<IEmailSender>();
var sut = new AccountController(userManager.Object, signInManager.Object, emailSenderMock.Object, generalSettings.Object, null);
sut.SetFakeHttpRequestSchemeTo(It.IsAny<string>());
sut.Url = Mock.Of<IUrlHelper>();
await sut.Register(model);
userManager.Verify(x => x.GenerateEmailConfirmationTokenAsync(It.Is<ApplicationUser>(au =>
au.UserName == model.Email &&
au.Email == model.Email &&
au.TimeZoneId == defaultTimeZone)), Times.Once);
}