Looking at the rest of the code again, the whole `Adapter.JsonObjectCallback` is copy&pasted into every test, the only difference I spotted is the expected value.

You should really refactor the creation of callback object into a method, so that you don't have to copy and paste so much. How great it would be if `run()` was this short:

```java
adapter.invokeStaticMethod("simple.getSecret", null, expectJsonResponse("shhh!"))
```