@Override public String apply(@Nullable final BusinessAccountTagModelDao input) { if (input == null) { return null; } else { return input.getName(); } } });
@Override public boolean equals(final Object o) { if (this == o) { return true; } if (o == null || getClass() != o.getClass()) { return false; } final BusinessAccountTagModelDao that = (BusinessAccountTagModelDao) o; if (accountId != null ? !accountId.equals(that.accountId) : that.accountId != null) { return false; } if (accountKey != null ? !accountKey.equals(that.accountKey) : that.accountKey != 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("BusinessAccountTagModelDao"); sb.append("{accountId='").append(accountId).append('\''); sb.append(", accountKey='").append(accountKey).append('\''); sb.append(", name='").append(getName()).append('\''); sb.append('}'); return sb.toString(); }
@Test(groups = "fast") public void testEquals() throws Exception { final UUID accountId = UUID.randomUUID(); final String accountKey = UUID.randomUUID().toString(); final String name = UUID.randomUUID().toString(); final BusinessAccountTagModelDao accountTag = new BusinessAccountTagModelDao(accountId, accountKey, name); Assert.assertSame(accountTag, accountTag); Assert.assertEquals(accountTag, accountTag); Assert.assertTrue(accountTag.equals(accountTag)); Assert.assertEquals(accountTag.getAccountId(), accountId); Assert.assertEquals(accountTag.getAccountKey(), accountKey); Assert.assertEquals(accountTag.getName(), name); final BusinessAccountTagModelDao otherAccountTag = new BusinessAccountTagModelDao(UUID.randomUUID(), UUID.randomUUID().toString(), UUID.randomUUID().toString()); Assert.assertFalse(accountTag.equals(otherAccountTag)); } }
@Test(groups = "slow") public void testCRUD() throws Exception { final UUID accountId = UUID.randomUUID(); final String accountKey = UUID.randomUUID().toString(); final String name = UUID.randomUUID().toString().substring(0, 20); // Verify initial state Assert.assertEquals(accountTagSqlDao.getTagsForAccountByKey(accountKey, internalCallContext).size(), 0); Assert.assertEquals(accountTagSqlDao.removeTag(accountId.toString(), name, internalCallContext), 0); // Add an entry Assert.assertEquals(accountTagSqlDao.addTag(accountId.toString(), accountKey, name, internalCallContext), 1); final List<BusinessAccountTagModelDao> tagsForAccount = accountTagSqlDao.getTagsForAccountByKey(accountKey, internalCallContext); Assert.assertEquals(tagsForAccount.size(), 1); // Retrieve it final BusinessAccountTagModelDao accountTag = tagsForAccount.get(0); Assert.assertEquals(accountTag.getAccountId(), accountId); Assert.assertEquals(accountTag.getAccountKey(), accountKey); Assert.assertEquals(accountTag.getName(), name); // Delete it Assert.assertEquals(accountTagSqlDao.removeTag(accountId.toString(), name, internalCallContext), 1); Assert.assertEquals(accountTagSqlDao.getTagsForAccountByKey(accountKey, internalCallContext).size(), 0); }