@Override
protected Statement methodBlock(final FrameworkMethod method) {
return new Statement() {
@Override
public void evaluate() throws Throwable {
DataObjectInstantiator oldValue = InstantiatorHolder.get();
InstantiatorHolder.set(instantiator);
try {
ProxyRunner.super.methodBlock(method).evaluate();
} finally {
InstantiatorHolder.set(oldValue);