2010-03-21 3 views
4

HtmlHelper 메서드를 따르기 위해 Moq를 사용하여 단위 테스트를 작성하는 방법을 제안 할 수 있습니까? 당신이 ShareClass가 정의 유형 DivTag으로 T를 지정하면,이 방법을 사용하여HtmlHelper 단위 테스트 방법 "Using (Html.BeginForm())"}

<%--Model is a type of ShareClass--%> 
<% using (Html.GenerateTag<DivTag>(Model)) { %> 
    My Div  
<% } %> 

: - 다음과 같이 (이 나에게 혼란의 원인이되는 using 문을 유의하시기 바랍니다) 사용합니다

public static HtmlTagBase GenerateTag<T>(this HtmlHelper htmlHelper 
            , object elementData 
            , object attributes) 
    where T : HtmlTagBase 
{ 
    return (T)Activator.CreateInstance(typeof(T) 
             , htmlHelper.ViewContext 
             , elementData 
             , attributes); 
} 

public class ShareClass 
{ 
    public string Name { get; set; } 
    public string Type { get; set; } 
    public IEnumerable<Fund> Funds { get; set; } 

    public ShareClass(string name, string shareClassType) 
    { 
     this.Name = name; 
     this.Type = shareClassType; 
    } 
} 

로 다음과 같은 HTML 렌더링됩니다

<div class="ShareClass" shareclass-type="ShareClass_A" shareclass-name="MyShareClass">My Div</div> 

답변