单元测试自定义角色提供程序
本文关键字:程序 角色 自定义 单元测试 | 更新日期: 2023-09-27 18:36:20
我正在尝试练习自定义角色提供程序方法。每个测试都是独立的,这意味着它与其他测试无关,并且在每个测试中我都会创建测试用户、测试角色等。没关系,我知道其他方法,但这适合此目的。
所以,我正在努力can_get_roles_for_user,这是代码
[Test]
public void can_get_roles_for_user()
{
MembershipCreateStatus status = new MembershipCreateStatus();
provider.CreateUser("testuser", "password", "testuseremail@google.com", "question", "answerswer", true, Guid.NewGuid(), out status);
provider.CreateUser("testuser2", "password", "testuseremail@google.com", "question", "answerswer", true, Guid.NewGuid(), out status);
roleProvider.CreateRole("TestRole");
roleProvider.CreateRole("AdministratorRole");
string[] users = { "TestUser", "TestUserAdministrator" };
string[] roles = { "TestRole", "AdministratorTestRole" };
roleProvider.AddUsersToRoles(users, roles);
var user = _provider.GetUser("TestUser", false);
string[] userRoles = _roleProvider.GetRolesForUser(user.UserName);
**//WHAT SHOULD I ASSERT HERE?**
}
欢迎任何建议,链接到您或其他测试角色提供商。
谢谢
您可以简单地比较角色集合:
CollectionAssert.AreEquivalent(roles, _roleProvider.GetRolesForUser(user.UserName));