Als ich vorhin am Artikel über das Mocken des HttpContext schrieb, wollte ich eigentlich eine Demo-Anwendung dazu packen. Als ich mit ihr fertig war, fiel mir auf, dass ich damit leicht über das Ziel hinaus geschossen war. Denn in der App ist viel mehr enthalten, daher widme ich ihr noch einen eigenen Post.
Im Grunde habe ich hier einiges in Form von ausführbarem Code reingepackt, über das ich zuletzt geschrieben habe:
Gespickt ist das Ganze noch mit dem, was all dies erst möglich macht: der Implementierung von StructureMap als IoC-Container.
Was zeigt das Sample also?
- Wie sich Dependency Injection ganz allgemein mit ASP.NET MVC verwenden lässt.
- Wie man StructureMap für die Verwendung mit ASP.NET MVC konfigurieren kann.
- Wie man Tests für eine Controller-Action schreiben kann.
- Wie sich der Zugriff auf HttpContext für einen Test mocken lässt.
- Wie man IValidationState praktisch einsetzen kann.
Was es nicht zeigt: Saubere Architektur! Ich habe der Einfachheit halber alle Zutaten wild in den Topf geschmissen. In der Praxis würden sich bei mir IAuthenticationService und IValidationState nie im gleichen Namespace, noch nicht mal im gleichen Projekt, wiederfinden ;-).
Aber vielleicht hilft es ja dem ein oder anderen sich einen kurzen Einblick zum Thema zu verschaffen und die ein oder andere offene Frage zu beantworten.
Downloads