@Test(expected = DataAccessException.class)
 @Override
 public void testInvalidUpdate() {
   final MessageDelivery m = messageDeliveryService.getMessageDelivery(MESSAGE_DELIV.getId());
   m.setDelivererTypeName(null);
   messageDeliveryService.saveMessageDelivery(m);
 }
 @Test(expected = DataIntegrityViolationException.class)
 @Override
 public void testDuplicateCreate() {
   // violates messageid-deliverer constraint
   final MessageDelivery md = new MessageDelivery();
   md.setId(KCBTestData.FAKE_ID);
   md.setDelivererSystemId(MESSAGE_DELIV.getDelivererSystemId());
   md.setDelivererTypeName(MESSAGE_DELIV.getDelivererTypeName());
   md.setDeliveryStatus(MESSAGE_DELIV.getDeliveryStatus());
   md.setLockVerNbr(MESSAGE_DELIV.getLockVerNbr());
   md.setMessage(MESSAGE);
   messageDeliveryService.saveMessageDelivery(md);
 }
  @Test
  @Override
  public void testUpdate() {
    MessageDelivery m = messageDeliveryService.getMessageDelivery(MESSAGE_DELIV.getId());
    m.setDelivererTypeName("eagle");
    m.setDeliveryStatus(MessageDeliveryStatus.UNDELIVERED);
    m.setDelivererSystemId("1234");
    messageDeliveryService.saveMessageDelivery(m);

    MessageDelivery m2 = messageDeliveryService.getMessageDelivery(m.getId());
    assertNotNull(m2);

    assertEqualsMD(m, m2);
  }
  @Test
  @Override
  public void testCreate() {
    MessageDelivery md = new MessageDelivery();
    md.setDelivererTypeName("pigeon");
    md.setMessage(MESSAGE);

    messageDeliveryService.saveMessageDelivery(md);

    assertNotNull(md.getId());
    Collection<MessageDelivery> ms = messageDeliveryService.getAllMessageDeliveries();
    assertNotNull(ms);
    assertEquals(2, ms.size());

    MessageDelivery md2 = messageDeliveryService.getMessageDelivery(md.getId());
    assertNotNull(md2);

    assertEqualsMD(md, md2);
  }