I found that captured action(or method)'s arguments are changed when I change the object that I passed as argument.
for example,
class A {
foo(b) {
}
}
const mockedA = mock(A);
const instanceA = instance(mockedA);
const argument = {};
instanceA.foo(argument);
argument.c = 5;
const [firstArg] = capture(mockedFoo.foo).last();
console.log(firstArg) // print { c: 5 } ! I expected it prints { } because I pass {}.
I guess captured argument should be serialized