@Override public BusinessInvoiceTagModelDao map(final int index, final ResultSet r, final StatementContext ctx) throws SQLException { return new BusinessInvoiceTagModelDao(UUID.fromString(r.getString(1)), r.getString(2)); } }
@Test(groups = "fast") public void testEquals() throws Exception { final UUID invoiceId = UUID.randomUUID(); final String name = UUID.randomUUID().toString(); final BusinessInvoiceTagModelDao invoiceTag = new BusinessInvoiceTagModelDao(invoiceId, name); Assert.assertSame(invoiceTag, invoiceTag); Assert.assertEquals(invoiceTag, invoiceTag); Assert.assertTrue(invoiceTag.equals(invoiceTag)); Assert.assertEquals(invoiceTag.getInvoiceId(), invoiceId); Assert.assertEquals(invoiceTag.getName(), name); final BusinessInvoiceTagModelDao otherInvoiceTag = new BusinessInvoiceTagModelDao(UUID.randomUUID(), UUID.randomUUID().toString()); Assert.assertFalse(invoiceTag.equals(otherInvoiceTag)); } }
@Test(groups = "slow") public void testCRUD() throws Exception { final String invoiceId = UUID.randomUUID().toString(); final String name = UUID.randomUUID().toString().substring(0, 20); // Verify initial state Assert.assertEquals(invoiceTagSqlDao.getTagsForInvoice(invoiceId, internalCallContext).size(), 0); Assert.assertEquals(invoiceTagSqlDao.removeTag(invoiceId, name, internalCallContext), 0); // Add an entry Assert.assertEquals(invoiceTagSqlDao.addTag(invoiceId, name, internalCallContext), 1); final List<BusinessInvoiceTagModelDao> tagsForInvoice = invoiceTagSqlDao.getTagsForInvoice(invoiceId, internalCallContext); Assert.assertEquals(tagsForInvoice.size(), 1); // Retrieve it final BusinessInvoiceTagModelDao invoiceTag = tagsForInvoice.get(0); Assert.assertEquals(invoiceTag.getInvoiceId().toString(), invoiceId); Assert.assertEquals(invoiceTag.getName(), name); // Delete it Assert.assertEquals(invoiceTagSqlDao.removeTag(invoiceId, name, internalCallContext), 1); Assert.assertEquals(invoiceTagSqlDao.getTagsForInvoice(invoiceId, internalCallContext).size(), 0); }
@Override public boolean equals(final Object o) { if (this == o) { return true; } if (o == null || getClass() != o.getClass()) { return false; } final BusinessInvoiceTagModelDao that = (BusinessInvoiceTagModelDao) o; if (invoiceId != null ? !invoiceId.equals(that.invoiceId) : that.invoiceId != null) { return false; } if (getName() != null ? !getName().equals(that.getName()) : that.getName() != null) { return false; } return true; }
@Override public String toString() { final StringBuilder sb = new StringBuilder(); sb.append("BusinessInvoiceTagModelDao"); sb.append("{paymentId='").append(invoiceId).append('\''); sb.append(", name='").append(getName()).append('\''); sb.append('}'); return sb.toString(); }