<分区>
我正在尝试通过创建现有 MVC 应用程序的副本来学习 TDD,但我正在使用 TDD 从头开始创建它的副本。
在我现有的应用程序中,我有一个 Application_AuthenticateRequest 方法,如下所示。
这是 protected 。我认为不应测试这些方法是否正确 - 即您应该只测试公共(public)方法而不是私有(private)和 protected 方法。如果这是真的,那么我是否可以在下面编写我的 protected 方法而不为其编写任何测试?
public class MvcApplication : System.Web.HttpApplication
{
protected void Application_Start()
{
AreaRegistration.RegisterAllAreas();
WebApiConfig.Register(GlobalConfiguration.Configuration);
FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);
RouteConfig.RegisterRoutes(RouteTable.Routes);
BundleConfig.RegisterBundles(BundleTable.Bundles);
StaticDataSeeder.Seed();
}
protected void Application_AuthenticateRequest(Object sender, EventArgs e)
{
HttpCookie authCookie = Context.Request.Cookies[FormsAuthentication.FormsCookieName];
if (authCookie == null) return;
var authTicket = FormsAuthentication.Decrypt(authCookie.Value);
if (authTicket == null) return;
var userData = new UserDataModel(authTicket.UserData);
var userPrincipal = new PaxiumPrincipal(new GenericIdentity(authTicket.Name), null)
{
Email = userData.Email,
Menu = userData.Menu,
RememberMe = userData.RememberMe
};
Context.User = userPrincipal;
}
}