@Test
public void whenAdd() {

    TestDomainAddPayload domainAddPayload = mock(TestDomainAddPayload.class);
    TestHibernateEntity hibernateEntity = mock(TestHibernateEntity.class);
    when(domainAddPayloadToHibernateEntityConverter.convert(domainAddPayload)).thenReturn(hibernateEntity);
    TestDomainEntity domainEntity = mock(TestDomainEntity.class);
    when(hibernateEntityToDomainEntityConverter.convert(hibernateEntity)).thenReturn(domainEntity);
    TestDomainEntity actual = gateway.add(domainAddPayload);
    verify(dao).create(hibernateEntity);
    verifyNoMoreInteractions(dao);
    assertThat(actual).isSameAs(domainEntity);
}