0

Linq To SQL クラスをモックしようとしています。

次のコードがあります。

IQueryable<User> vUser =
     (from aUser in _ctx.Users
      where aUser.UserName == userName
      select aUser);

単体テストの実行中は明らかに_ctx.Usersnull です。_ctx(データ コンテキスト)をモックできますUsersが、Table<T>シールされています。したがって、これは失敗します:

_ctx.Users = Table<User>();

Pex は、 Molesを使用して任意のメソッド呼び出しを迂回できることについて語っています。

DateTime.Now() をオーバーライドできる例を見ましたが、これが私のシナリオに役立つかどうかはわかりません。

これを経験した人はいますか?

4

1 に答える 1

0

はい、できます。

詳細については、この投稿を参照してください。

http://social.msdn.microsoft.com/Forums/en-US/pex/thread/d73f730b-37df-40f9-8c62-afb76993fbbe/#86699ca1-70e6-4026-a1f9-4978e286d0a3

于 2010-02-10T22:01:47.143 に答える