private void assertReturnRecordedValue(TestInterface testObject) {
    String returnValue = "returnValue";
    Integer returnInteger = 10;

    Recorder<TestInterface> recorder = TestObject.createRecorder(testObject);
    recorder
        .record(testObject.returnObject())
        .andReturn(returnValue)
        .record(testObject.returnInteger())
        .andReturn(returnInteger);

    assertEquals(returnValue, testObject.returnObject());
    assertEquals(returnInteger, testObject.returnInteger());
  }
 private void assertDefaultObjectReturnValue(TestInterface testObject) {
   assertNull(testObject.returnObject());
   assertNull(testObject.returnInteger());
 }
  private void assertRecodedExceptionThrown(TestInterface testObject) {
    Recorder<TestInterface> recorder = TestObject.createRecorder(testObject);

    recorder.record(testObject.returnObject()).andThrow(new IllegalArgumentException());
    testObject.returnObject();
  }