public void TestDeleteInactiveProfiles() { var membershipConfig = new NameValueCollection(_membershipConfig); var membershipProvider = new MongoMembershipProvider(); membershipProvider.Initialize(DefaultMembershipName, membershipConfig); var profileConfig = new NameValueCollection(_profileConfig); var profileProvider = new MongoProfileProvider(); profileProvider.Initialize(DefaultProfileName, profileConfig); SetUpTestProfiles(membershipProvider, profileProvider); int numberOfUsersBefore, numberOfUsersAfter; membershipProvider.GetAllUsers(0, int.MaxValue, out numberOfUsersBefore); var numberOfInactiveProfilesDeleted = profileProvider.DeleteInactiveProfiles(ProfileAuthenticationOption.All, DateTime.Now.AddDays(-1)); var numberOfInactiveProfiles = profileProvider.GetNumberOfInactiveProfiles(ProfileAuthenticationOption.All, DateTime.Now.AddDays(-1)); membershipProvider.GetAllUsers(0, int.MaxValue, out numberOfUsersAfter); Assert.AreEqual(40, numberOfInactiveProfilesDeleted); Assert.AreEqual(0, numberOfInactiveProfiles); // No users should be removed by this process. Assert.AreEqual(numberOfUsersBefore, numberOfUsersAfter); }
public void TestSetPropertyValuesWithAnonymousUser() { var profileConfig = new NameValueCollection(_profileConfig); var profileProvider = new MongoProfileProvider(); profileProvider.Initialize(DefaultProfileName, profileConfig); var userName = Guid.NewGuid().ToString(); var collection = new SettingsPropertyValueCollection(); AddProviderSpecificPropertyValuesTo(collection, allowAnonymous: true); profileProvider.SetPropertyValues(TestHelper.GenerateSettingsContext(userName, false), collection); }
public void TestSetPropertyValues() { var membershipConfig = new NameValueCollection(_membershipConfig); var membershipProvider = new MongoMembershipProvider(); membershipProvider.Initialize(DefaultMembershipName, membershipConfig); MembershipCreateStatus status; membershipProvider.CreateUser("user", "123456", "*****@*****.**", null, null, true, null, out status); var profileConfig = new NameValueCollection(_profileConfig); var profileProvider = new MongoProfileProvider(); profileProvider.Initialize(DefaultProfileName, profileConfig); var collection = new SettingsPropertyValueCollection(); AddProviderSpecificPropertyValuesTo(collection, allowAnonymous: false); profileProvider.SetPropertyValues(TestHelper.GenerateSettingsContext("user", true), collection); }
public void TestInitializeWhenCalledTwice() { var config = new NameValueCollection(_profileConfig); var provider = new MongoProfileProvider(); Assert.Throws<InvalidOperationException>(() => { provider.Initialize(DefaultProfileName, config); provider.Initialize(DefaultProfileName, config); }); }
public void TestGetPropertyValuesUsingXmlProperties() { var membershipConfig = new NameValueCollection(_membershipConfig); var membershipProvider = new MongoMembershipProvider(); membershipProvider.Initialize(DefaultMembershipName, membershipConfig); MembershipCreateStatus status; membershipProvider.CreateUser("user", "123456", "*****@*****.**", null, null, true, null, out status); var profileConfig = new NameValueCollection(_profileConfig); var profileProvider = new MongoProfileProvider(); profileProvider.Initialize(DefaultProfileName, profileConfig); var values = new SettingsPropertyValueCollection(); AddXmlPropertyValuesTo(values, allowAnonymous: false); profileProvider.SetPropertyValues(TestHelper.GenerateSettingsContext("user", true), values); var properties = new SettingsPropertyCollection(); AddXmlPropertiesTo(properties, allowAnonymous: false); var retrievedValues = profileProvider .GetPropertyValues(TestHelper.GenerateSettingsContext("user", true), properties); var rawRetrievedValues = retrievedValues .Cast<SettingsPropertyValue>() .Select(value => value.PropertyValue) .ToList(); Assert.AreEqual(1, retrievedValues.Count); Assert.Contains("Value of stringValue", rawRetrievedValues); }
public void TestGetPropertyValuesUsingProviderSpecificPropertiesWithAnonymousUser() { var profileConfig = new NameValueCollection(_profileConfig); var profileProvider = new MongoProfileProvider(); profileProvider.Initialize(DefaultProfileName, profileConfig); var userName = Guid.NewGuid().ToString(); var values = new SettingsPropertyValueCollection(); AddProviderSpecificPropertyValuesTo(values, allowAnonymous: true); profileProvider.SetPropertyValues(TestHelper.GenerateSettingsContext(userName, false), values); var properties = new SettingsPropertyCollection(); AddProviderSpecificPropertiesTo(properties, allowAnonymous: true); var retrievedValues = profileProvider .GetPropertyValues(TestHelper.GenerateSettingsContext(userName, false), properties); var rawRetrievedValues = retrievedValues .Cast<SettingsPropertyValue>() .Select(value => value.PropertyValue) .ToList(); Assert.AreEqual(2, retrievedValues.Count); Assert.Contains("Value of stringValue1", rawRetrievedValues); Assert.Contains("Value of stringValue2", rawRetrievedValues); }
public void TestGetNumberOfInactiveProfilesThatAreAuthenticated() { var membershipConfig = new NameValueCollection(_membershipConfig); var membershipProvider = new MongoMembershipProvider(); membershipProvider.Initialize(DefaultMembershipName, membershipConfig); var profileConfig = new NameValueCollection(_profileConfig); var profileProvider = new MongoProfileProvider(); profileProvider.Initialize(DefaultProfileName, profileConfig); SetUpTestProfiles(membershipProvider, profileProvider); var numberOfInactiveProfiles = profileProvider.GetNumberOfInactiveProfiles(ProfileAuthenticationOption.Authenticated, DateTime.Now.AddDays(-1)); Assert.AreEqual(20, numberOfInactiveProfiles); }
public void TestGetAllProfiles() { var membershipConfig = new NameValueCollection(_membershipConfig); var membershipProvider = new MongoMembershipProvider(); membershipProvider.Initialize(DefaultMembershipName, membershipConfig); var profileConfig = new NameValueCollection(_profileConfig); var profileProvider = new MongoProfileProvider(); profileProvider.Initialize(DefaultProfileName, profileConfig); SetUpTestProfiles(membershipProvider, profileProvider); int totalRecords = 0; var profiles = profileProvider.GetAllProfiles(ProfileAuthenticationOption.All, 0, 30, out totalRecords); Assert.AreEqual(80, totalRecords); Assert.AreEqual(30, profiles.Count); foreach (ProfileInfo p in profiles) { Assert.AreEqual("user", p.UserName.Substring(0, 4)); Assert.Greater(p.Size, 0); } }
public void TestGetAllProfilesThatAreAuthenticated() { var membershipConfig = new NameValueCollection(_membershipConfig); var membershipProvider = new MongoMembershipProvider(); membershipProvider.Initialize(DefaultMembershipName, membershipConfig); var profileConfig = new NameValueCollection(_profileConfig); var profileProvider = new MongoProfileProvider(); profileProvider.Initialize(DefaultProfileName, profileConfig); SetUpTestProfiles(membershipProvider, profileProvider); int totalRecords = 0; var profiles = profileProvider.GetAllProfiles(ProfileAuthenticationOption.Authenticated, 0, 30, out totalRecords); Assert.AreEqual(40, totalRecords); Assert.AreEqual(30, profiles.Count); foreach (ProfileInfo p in profiles) { Assert.AreEqual("user", p.UserName.Substring(0, 4)); // All even records are authenticated in this test. Assert.IsTrue(Convert.ToInt32(p.UserName.Substring(4)) % 2 == 0); Assert.IsFalse(p.IsAnonymous); Assert.Greater(p.Size, 0); } }
public void TestFindProfilesByUserNameThatAreAnonymous() { var membershipConfig = new NameValueCollection(_membershipConfig); var membershipProvider = new MongoMembershipProvider(); membershipProvider.Initialize(DefaultMembershipName, membershipConfig); var profileConfig = new NameValueCollection(_profileConfig); var profileProvider = new MongoProfileProvider(); profileProvider.Initialize(DefaultProfileName, profileConfig); SetUpTestProfiles(membershipProvider, profileProvider); int totalRecords = 0; var profiles = profileProvider.FindProfilesByUserName(ProfileAuthenticationOption.Anonymous, @"user2\d*", 0, 2, out totalRecords); Assert.AreEqual(5, totalRecords); Assert.AreEqual(2, profiles.Count); foreach (ProfileInfo p in profiles) { Assert.IsTrue(p.UserName.StartsWith("user2")); // All even records are authenticated in this test. Assert.IsFalse(Convert.ToInt32(p.UserName.Substring(4)) % 2 == 0); Assert.IsTrue(p.IsAnonymous); Assert.Greater(p.Size, 0); } }
public void TestFindProfilesByUserName() { var membershipConfig = new NameValueCollection(_membershipConfig); var membershipProvider = new MongoMembershipProvider(); membershipProvider.Initialize(DefaultMembershipName, membershipConfig); var profileConfig = new NameValueCollection(_profileConfig); var profileProvider = new MongoProfileProvider(); profileProvider.Initialize(DefaultProfileName, profileConfig); SetUpTestProfiles(membershipProvider, profileProvider); int totalRecords = 0; var profiles = profileProvider.FindProfilesByUserName(ProfileAuthenticationOption.All, @"user2\d*", 0, 2, out totalRecords); Assert.AreEqual(10, totalRecords); Assert.AreEqual(2, profiles.Count); foreach (ProfileInfo p in profiles) { Assert.IsTrue(p.UserName.StartsWith("user2")); Assert.Greater(p.Size, 0); } }
public void TestFindInactiveProfilesByUserName() { var membershipConfig = new NameValueCollection(_membershipConfig); var membershipProvider = new MongoMembershipProvider(); membershipProvider.Initialize(DefaultMembershipName, membershipConfig); var profileConfig = new NameValueCollection(_profileConfig); var profileProvider = new MongoProfileProvider(); profileProvider.Initialize(DefaultProfileName, profileConfig); SetUpTestProfiles(membershipProvider, profileProvider); int totalRecords = 0; var profiles = profileProvider.FindInactiveProfilesByUserName( ProfileAuthenticationOption.All, @"user\d*(0|1)", DateTime.Now.AddDays(-1), 0, 2, out totalRecords); Assert.AreEqual(8, totalRecords); Assert.AreEqual(2, profiles.Count); foreach (ProfileInfo p in profiles) { Assert.IsTrue(p.UserName.StartsWith("user") && (p.UserName.EndsWith("0") || p.UserName.EndsWith("1"))); Assert.Greater(p.Size, 0); } }
public void TestDeleteProfilesUsingStringArray() { var membershipConfig = new NameValueCollection(_membershipConfig); var membershipProvider = new MongoMembershipProvider(); membershipProvider.Initialize(DefaultMembershipName, membershipConfig); var profileConfig = new NameValueCollection(_profileConfig); var profileProvider = new MongoProfileProvider(); profileProvider.Initialize(DefaultProfileName, profileConfig); SetUpTestProfiles(membershipProvider, profileProvider); int numberOfUsersBefore, numberOfUsersAfter; membershipProvider.GetAllUsers(0, int.MaxValue, out numberOfUsersBefore); // Note that user0 does not have a profile. var numberOfProfilesDeleted = profileProvider.DeleteProfiles(new [] { "user0", "user44", "user56" }); int numberOfProfilesRemaining; profileProvider.GetAllProfiles(ProfileAuthenticationOption.All, 0, int.MaxValue, out numberOfProfilesRemaining); membershipProvider.GetAllUsers(0, int.MaxValue, out numberOfUsersAfter); Assert.AreEqual(2, numberOfProfilesDeleted); Assert.AreEqual(78, numberOfProfilesRemaining); // No users should be removed by this process. Assert.AreEqual(numberOfUsersBefore, numberOfUsersAfter); }
public void TestDeleteProfilesUsingProfileInfoCollection() { var membershipConfig = new NameValueCollection(_membershipConfig); var membershipProvider = new MongoMembershipProvider(); membershipProvider.Initialize(DefaultMembershipName, membershipConfig); var profileConfig = new NameValueCollection(_profileConfig); var profileProvider = new MongoProfileProvider(); profileProvider.Initialize(DefaultProfileName, profileConfig); SetUpTestProfiles(membershipProvider, profileProvider); int numberOfUsersBefore, numberOfUsersAfter; membershipProvider.GetAllUsers(0, int.MaxValue, out numberOfUsersBefore); int totalRecords; var profiles = profileProvider.FindProfilesByUserName(ProfileAuthenticationOption.All, @"user3\d", 0, int.MaxValue, out totalRecords); var numberOfProfilesDeleted = profileProvider.DeleteProfiles(profiles); int numberOfProfilesRemaining; profileProvider.GetAllProfiles(ProfileAuthenticationOption.All, 0, int.MaxValue, out numberOfProfilesRemaining); membershipProvider.GetAllUsers(0, int.MaxValue, out numberOfUsersAfter); Assert.AreEqual(10, numberOfProfilesDeleted); Assert.AreEqual(70, numberOfProfilesRemaining); // No users should be removed by this process. Assert.AreEqual(numberOfUsersBefore, numberOfUsersAfter); }