2013-05-23 3 views
0

사용자가 역할에 추가되면 테스트하는 테스트 방법이 있습니다. 하지만 그 역할에 사용자를 추가 할 수 없습니다. 누군가 내가 잘못한 것을 설명 할 수 있습니까?그 역할에 사용자 추가하기

public override void AddUsersToRoles(string[] usernames, string[] roleNames) 
    { 
     try 
     { 
      Profile.MembershipMapper memberMapper = new Profile.MembershipMapper(); 
      memberMapper.AddUsersToRoles(_memberUtil.GetApplicationId(), usernames, roleNames); 
     } 
     catch (Exception ex) 
     { 
      throw new ProviderException("AddUsersToRoles", ex); 
     } 
    } 

      string sRoleName = "TestRole"; 
      string sUsername = "test.user";//"testUserX" 

      // Use a known user for relationships 
      AsaMembershipProvider prov = this.GetMembershipProvider(); 
      MembershipUser user = prov.GetUser(sUsername, false); 

      // Create a new role 
      AsaRoleProvider roleProv = this.GetRoleProvider(); 
      roleProv.CreateRole(sRoleName); 

      // Verify that role exists 
      bool bRoleExists = roleProv.RoleExists(sRoleName); 
      Assert.IsTrue(bRoleExists); 

      // Add users to that role 
      string[] usernames = new string[] { sUsername}; 
      string[] roleNames = new string[] { sRoleName }; 

      //Doesnt add user 
      roleProv.AddUsersToRoles(usernames, roleNames); 
+0

사용자 정의의 경우 역할 공급자 코드를 확인해야합니다. 그렇지 않으면 우리는 당신이 그 클래스에 대해 어떤 클래스를 사용하고 있는지 알 필요가 있습니다. – Renan

+0

은 ... 'roleProv.AddUsersToRoles (usernames, roleNames); eNames);' – xandercoded

답변

1

코드가 그대로 컴파일되지 않습니다.

roleProv.AddUsersToRoles(usernames, roleNames, eNames); 

내가 정의된다 eNames 코드에 표시되지 않습니다,하지만 난 또한 당신이 여기 기본 구문 문제가 있으리라 믿고있어 :

roleProv.AddUsersToRoles(usernames, roleNames);eNames); //syntax error probably 

AddUsersToRoles 3 개 개의 매개 변수를 가정하면,이 시도 .

IDE에주의하십시오. 아마 그게 무슨 문제인지 말해 줄거야.

또한 여기에 코드를 복사하는 것이 엉망인 경우 AddUsersToRoles이 코드를 포함하지 않았기 때문에 제대로 작동하지 않는 이유를 알 수 없습니다.

향후 관련 코드를 포함하십시오. "작동하지 않는다"고 말하면 문제에 대해 아무 것도 알려주지 않습니다. 컴파일 오류? 런타임 예외? 예상치 못한 동작입니까?

+0

예기치 않은 동작을합니다. 내가 할 수있는 한, 테스트가 통과해야하고 사용자가 역할에 추가되어야한다고 말할 수 있습니다. 내가 코드를 디버깅하고 단계를 밟을 때 Assert.Fail이 실패합니다. AddUsersToRoles – user216672

+0

'AddUsersToRoles'에 코드를 보여줍니다. – tnw

+0

'Assert.Fail failed'는 의도적으로 메소드를 에러 아웃시키는'Assert.Fail()'이 있음을 나타냅니다. – tnw