[英]2 problems with testing asp.net membership provider
I have created a unit test to search for users by name. 我创建了一个单元测试,以按名称搜索用户。 I have 2 problems I cant figure out.
我有2个无法解决的问题。
Assert.IsTrue(coll.Count == 2)
doesnt count the users as it should. Assert.IsTrue(coll.Count == 2)
不会对用户进行应有的计数。 There should be 2 users and it only counts 1. 应该有2个用户,并且只计数1。
Assert.IsTrue(usernames.Contains("testUser"));
doesn't find the partial username string as it should. 找不到应有的部分用户名字符串。 Can someone tell me what I'm doing wrong?
有人可以告诉我我在做什么错吗?
Here is my code: 这是我的代码:
[TestMethod]
public void TestFindUsersByName()
{
//set test to crate user
AsaMembershipProvider prov = this.GetMembershipProvider();
MembershipCreateStatus status;
//creates users
MembershipUser user1 = prov.CreateUser("testUser1", "12345", "test.User1@abc.com", "", "", true, null, out status);
MembershipUser user2 = prov.CreateUser("testUser2", "12345", "test.User2@abc.com", "", "", true, null, out status);
//gets users
user1 = prov.GetUser("testUser1", false); //not checking if user is online. Argument should be false. Not yet implemented
user2 = prov.GetUser("testUser2", false);
int pageSize = 5;
int pageIndex = 0;
int totalRecords = 2;
MembershipUserCollection coll = prov.FindUsersByName("testUser1", pageIndex, pageSize, out totalRecords);
Assert.IsTrue(coll.Count == 2);
List<string> usernames = new List<string>();
foreach (MembershipUser user in coll)
{
usernames.Add(user.UserName);
}
Assert.AreNotEqual(usernames, null);
Assert.IsTrue(usernames.Contains("testUser"));
//Deletes Users
prov.DeleteUser("testUser1", true);
prov.DeleteUser("testUser2", true);
//Tries to get users again
user1 = prov.GetUser("testUser1", false);
user2 = prov.GetUser("testUser2", false);
//test that no users are returned
Assert.AreEqual(null, user1);
Assert.AreEqual(null, user2);
}
Issue 1: You are looking for "testUser1" in a collection of two users. 问题1:您正在两个用户的集合中寻找“ testUser1”。 You get 1 and not 2 because there is only one user named "testUser1"
您得到1而不是2,因为只有一个名为“ testUser1”的用户
Issue 2: You are searching for "testUser" and not a partial. 问题2:您正在搜索“ testUser”,而不是局部的。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.