2011-12-05 17 views
1

私はSubmitClick方法で使用されているsystem.resxリソースファイル.resxリソースファイルはどのように単体テストできますか?

Protected Sub SubmitClick(ByVal sender As Object, ByVal e As EventArgs) 

    (...) 

    If (... AndAlso ...) Then 
     SetError(Resources.system.groupNoAdminTran) 
    End If 

End Sub 

を持っている私の問題はSETERRORがで打撃されたとき、私はユニットテストにこれをしようとどのように関係なく、テストが失敗するということです。

"Could not load file or assembly 'App_GlobalResources' or one of its 
dependencies. The system cannot find the file specified." 

私はResources.systemを模倣する方法はありますか?

おかげ

+0

何が壊れていますか?エラーが発生していますか?ユニットテストは合格しませんか?ユニットテストはどのように見えますか? –

+0

SetErrorがヒットした場合、ユニットテストは「ファイルまたはアセンブリ 'App_GlobalResources」またはその依存関係の1つを読み込めませんでした。システムは指定されたファイルを見つけることができません。 – kooshka

+0

質問が重複しているようです: http://stackoverflow.com/questions/4153748/app-globalresources-not-loading-in-a-unit-test-case – Gilles

答えて

0

このソリューションは、エレガントではないかもしれないが、私は、批判気軽に最後に使用したものです。

Protected Sub SubmitClick(ByVal sender As Object, ByVal e As EventArgs) 

    (...) 

    If (... AndAlso ...) Then 
     SetError(GroupNoAdminTran) 
    End If 

End Sub 

はテスト用として、簡単なモックを行います:その後、同じように使用でき

Public Property GroupNoAdminTran() As String 
    Get 
     If String.IsNullOrEmpty(_groupNoAdminTran) Then 
      _groupNoAdminTran = Resources.system.groupNoAdminTran 
     End If 
     Return _groupNoAdminTran 
    End Get 
    Set(ByVal value As String) 
     _groupNoAdminTran = value 
    End Set 
End Property 

手動でリソースの各必要な文字列のプロパティを作成しました

_moqView.Setup(x => x.GroupNoAdminTran).Returns("GroupNoAdminTranTest"); 

などです。私はこれが役立つことを願っています

関連する問題