2009-07-27 8 views
1

J'ai créé un RoleProvider personnalisé dans une bibliothèque personnalisée. Je voudrais tester l'unité. Via Moq, j'ai créé un faux HttpContextBase. Comment passer cela à tester RoleProvider?Unité test RoleProvider personnalisé avec Moq?

L'identité est un test personnalisé implementation class. Cela fonctionne bien. Je ne sais pas comment passer dans le faux contexte chez mon fournisseur. Il ne s'agit pas d'une application MVC, mais de formulaires Web standard si cela est nécessaire.

Grz, Kris.

+0

En ce moment, je vais essayer: http://haacked.com/archive/2005/06/11/Simulating_HttpContext.aspx. – XIII

Répondre

1

Vous pouvez utiliser l'injection de dépendances (DI) et la transmettre via le constructeur de votre rôle RoleProvider personnalisé.

public MyRoleProvider(HttpContextBase httpContext) 
{ 
    // ... 
} 

Cela vous permettrait de passer l'instance Moq via le constructeur.

+0

Et puis comment le gérer? – XIII

+0

Enregistrez-le en tant que variable membre. –

+0

Désolé je ne comprends pas. Le roleprovider ne peut pas être manipulé avec (codewise). Y at-il une autre solution de contournement possible? – XIII