public static FluentProvider<IList<TestUser>> WithConfirmedUsers( this MembershipProvider provider, int count, out string prefix) { prefix = Guid.NewGuid().ToString("N"); var users = new List<TestUser>(); for (var i = 0; i < count; i++) { var profile = new Dictionary<string, object>(); var userName = prefix + "_" + i; var email = prefix + i + "@test.com"; var testUser = new TestUser(userName, email, DefaultPassword, profile); users.Add(testUser); } Action<IList<TestUser>> lazyCreate = t => t.ToList().ForEach( u => { if (provider.HasEmailColumnDefined()) { u.Profile.Add(provider.AsBetter().UserEmailColumn, u.Email); } provider.AsBetter().CreateUserAndAccount(u.UserName, u.Password, u.Profile); }); return new FluentProvider<IList<TestUser>>(provider, users, lazyCreate); }
public static FluentProvider<TestUser> WithConfirmedUser(this MembershipProvider provider) { var prefix = Guid.NewGuid().ToString("N"); var profile = new Dictionary<string, object>(); var userName = prefix; var email = prefix + "@test.com"; Action<TestUser> lazyCreate = t => { if (provider.HasEmailColumnDefined()) { profile.Add(provider.AsBetter().UserEmailColumn, t.Email); } provider.AsBetter().CreateUserAndAccount(t.UserName, t.Password, t.Profile); }; var testUser = new TestUser(userName, email, DefaultPassword, profile); return new FluentProvider<TestUser>(provider, testUser, lazyCreate); }
public static bool HasEmailColumnDefined(this MembershipProvider provider) { return provider.AsBetter().HasEmailColumnDefined; }
public static int PasswordAttemptWindowInSeconds(this MembershipProvider provider) { return provider.AsBetter().PasswordAttemptWindowInSeconds; }
public static FluentProvider<TestUser> WithUnregisteredUser( this MembershipProvider provider, string userName = null, string email = null) { var userNameParam = userName ?? Guid.NewGuid().ToString("N"); var emailParam = email ?? userNameParam + "@test.com"; if (!provider.AsBetter().HasEmailColumnDefined) { emailParam = null; } return new FluentProvider<TestUser>( provider, new TestUser(userNameParam, emailParam, DefaultPassword, new Dictionary<string, object>()), t => { }); }