でのメソッドの実行後に私がvoidメソッド持っている変数名を設定します。は、ユニットテスト
this._dispatcher.PushAsync(handler, cmd);
を実行した後、私はcmd
のプロパティを変更しました:
cmd.Result = userId;
私は、実行voidメソッドの後にプロパティの値を設定するにはどうすればよいですユニットテストで?
私はそのような何かしようとしている:
_dispatcher = new Mock<IDispatcher>();
_a = new Mock<SaveUserCmd>();
_dispatcher
.Setup(r => r.PushAsync(_cmdHandler, this._cmd))
.Callback(() => _a.SetupProperty(y => y.Result == this._response));
をしかし、それは示しています...
(Error: Expression is not a property access:
y => y.Result == this._response
).
SaveUserCmd:
public class SaveUserCmd
{
public string FirstName { get; set; }
public string LastName { get; set; }
public object Result { get; set; }
}
IDispatcher:
public interface IDispatcher
{
Task PushAsync<TCommand>(ICommandHandlerAsync<TCommand> commandHandlerAsync, TCommand message);
}
「間違っている」とはどういう意味ですか?例外はありますか?予期しない動作? – HimBromBeere