SimpleMockでアサーションを追加できるようにした

public class TestCase

  @Test
  public void アサーションを実行できること() {
    Interface i = SimpleMock.mock(Interface.class)
          .expect("bbb").with(Integer.class).asserts(this, "アサーション").returns("")
          .create();
    i.bbb(1); //=> assertion done with 1
  }
  
  public void アサーション(Integer target) {
    System.out.println("assertion done with " + target);
    assertEquals(1, target);
  }
}

interfaceのチェックしたいメソッドと同じ引数を持つアサートメソッドを作成し、メソッド名をassertsに渡すだけ。アサーションの内容はテストクラスに書けるのでテスティングフレームワークにも依存しない!手抜きですけどね!