public async Task FilterPerInstanceMethod_Work()
{
// Arrange
var log = new LogBoard<string>();
var a = ActorOf(() => new RequestFilterPerInstanceMethodActor(log)).Cast<DummyExRef>();
// Act
await a.Call("A");
await a.Call("B");
await a.CallEx("C");
// Assert
Assert.Equal(
new[]
{
"RequestFilterPerInstanceMethodActor.Call.Constructor",
"RequestFilterPerInstanceMethodActor.CallEx.Constructor",
},
log.Take(2).OrderBy(x => x));
Assert.Equal(
new[]
{
"RequestFilterPerInstanceMethodActor.Call.OnPreRequest",
"Call(A)",
"RequestFilterPerInstanceMethodActor.Call.OnPostRequest",
"RequestFilterPerInstanceMethodActor.Call.OnPreRequest",
"Call(B)",
"RequestFilterPerInstanceMethodActor.Call.OnPostRequest",
"RequestFilterPerInstanceMethodActor.CallEx.OnPreRequest",
"CallEx(C)",
"RequestFilterPerInstanceMethodActor.CallEx.OnPostRequest"
},
log.Skip(2));
}