// Copyright (c) Microsoft Open Technologies, Inc. All rights reserved. // Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. using System; using System.Linq; using System.Security.Claims; using System.Threading; using System.Threading.Tasks; using Microsoft.AspNet.Identity.Test; using Microsoft.Framework.DependencyInjection; using Microsoft.Framework.DependencyInjection.Fallback; namespace Microsoft.AspNet.Identity.InMemory.Test { public class InMemoryStoreTest : UserManagerTestBase { protected override UserManager CreateManager() { var services = new ServiceCollection(); services.AddTransient, UserValidator>(); services.AddTransient, PasswordValidator>(); var options = new IdentityOptions { Password = new PasswordOptions { RequireDigit = false, RequireLowercase = false, RequireNonLetterOrDigit = false, RequireUppercase = false }, User = new UserOptions { AllowOnlyAlphanumericNames = false } }; var optionsAccessor = new OptionsAccessor(new[] {new TestSetup(options)}); //services.AddInstance>(optionsAccessor); //services.AddInstance>(new InMemoryUserStore()); //services.AddSingleton, UserManager>(); //return services.BuildServiceProvider().GetService>(); return new UserManager(services.BuildServiceProvider(), new InMemoryUserStore(), optionsAccessor); } protected override RoleManager CreateRoleManager() { var services = new ServiceCollection(); services.AddTransient, RoleValidator>(); services.AddInstance>(new InMemoryRoleStore()); //return services.BuildServiceProvider().GetService>(); return new RoleManager(services.BuildServiceProvider(), new InMemoryRoleStore()); } } }