protected void setUpdatedAt(final Object updatedAt) { this.updatedAt = dateTimeOrNull(updatedAt); }
private void verifyAccountAcquisition(final AccountAcquisition acquisition) { Assert.assertEquals(acquisition.getCampaign(), "mailchimp67a904de95.0914d8f4b4"); Assert.assertEquals(acquisition.getChannel(), AcquisitionChannel.BLOG); Assert.assertEquals(acquisition.getCurrency(), "USD"); Assert.assertEquals(acquisition.getCostInCents(), new Integer(199)); Assert.assertEquals(acquisition.getSubchannel(), "Whitepaper Blog Post"); } }
Assert.assertEquals(acquisition.getSubchannel(), acquisitionData.getSubchannel()); Assert.assertEquals(acquisition.getCampaign(), acquisitionData.getCampaign()); Assert.assertEquals(acquisition.getChannel(), acquisitionData.getChannel()); Assert.assertEquals(acquisition.getCurrency(), acquisitionData.getCurrency()); Assert.assertEquals(acquisition.getCostInCents(), acquisitionData.getCostInCents()); Assert.assertEquals(acquisition.getSubchannel(), acquisitionData.getSubchannel()); Assert.assertEquals(acquisition.getCampaign(), acquisitionData.getCampaign()); Assert.assertEquals(acquisition.getChannel(), acquisitionData.getChannel()); Assert.assertEquals(acquisition.getCurrency(), acquisitionData.getCurrency()); Assert.assertEquals(acquisition.getCostInCents(), acquisitionData.getCostInCents()); acquisitionData.setSubchannel("updated"); acquisitionData.setCampaign("updated"); acquisitionData.setCostInCents(0); acquisitionData.setCurrency("EUR"); acquisitionData.setChannel(AcquisitionChannel.OTHER); Assert.assertEquals(acquisition.getSubchannel(), "updated"); Assert.assertEquals(acquisition.getCampaign(), "updated"); Assert.assertEquals(acquisition.getChannel(), AcquisitionChannel.OTHER); Assert.assertEquals(acquisition.getCurrency(), "EUR"); Assert.assertEquals(acquisition.getCostInCents(), new Integer(0));
/** * Creates a random {@link AccountAcquisition} object for use in Tests given a seed * * @param seed The RNG seed * @return The random {@link AccountAcquisition} object */ public static AccountAcquisition createRandomAccountAcquisition(final int seed) { final AccountAcquisition acquisition = new AccountAcquisition(); acquisition.setCurrency("USD"); acquisition.setCampaign("mailchimp." + randomAlphaNumericString(10, seed)); acquisition.setChannel(AcquisitionChannel.MARKETING_CONTENT); acquisition.setCostInCents(randomInteger(1000, seed)); acquisition.setSubchannel(randomAlphaNumericString(50, seed)); return acquisition; } }
@Test(groups = "fast") public void testHashCodeAndEquality() throws Exception { // create accounts of the same value but difference references AccountAcquisition acquisition = TestUtils.createRandomAccountAcquisition(0); AccountAcquisition otherAcquisition = TestUtils.createRandomAccountAcquisition(0); assertNotEquals(System.identityHashCode(acquisition), System.identityHashCode(otherAcquisition)); assertEquals(acquisition.hashCode(), otherAcquisition.hashCode()); assertEquals(acquisition, otherAcquisition); }
@Test(groups = "fast") public void testSerialization() throws Exception { // See https://dev.recurly.com/docs/create-account-acquisition final String acquisitionData = "<account_acquisition href=\"https://api.recurly.com/v2/accounts/1/acquisition\">\n" + " <account href=\"https://your-subdomain.recurly.com/v2/accounts/1\"/>\n" + " <cost_in_cents type=\"integer\">199</cost_in_cents>\n" + " <currency>USD</currency>\n" + " <channel>blog</channel>\n" + " <subchannel>Whitepaper Blog Post</subchannel>\n" + " <campaign>mailchimp67a904de95.0914d8f4b4</campaign>\n" + " <created_at type=\"datetime\">2016-08-12T19:45:14Z</created_at>\n" + " <updated_at type=\"datetime\">2016-08-12T19:45:14Z</updated_at>\n" + "</account_acquisition>"; final AccountAcquisition acquisition = xmlMapper.readValue(acquisitionData, AccountAcquisition.class); Assert.assertEquals(acquisition.getHref(), "https://api.recurly.com/v2/accounts/1/acquisition"); verifyAccountAcquisition(acquisition); // Verify serialization final String acquisitionSerialized = xmlMapper.writeValueAsString(acquisition); final AccountAcquisition acquisition2 = xmlMapper.readValue(acquisitionSerialized, AccountAcquisition.class); verifyAccountAcquisition(acquisition2); }
return false; if (accountAcquisition != null ? !accountAcquisition.equals(account.accountAcquisition) : account.accountAcquisition != null) { return false;
Assert.assertEquals(acquisition.getSubchannel(), acquisitionData.getSubchannel()); Assert.assertEquals(acquisition.getCampaign(), acquisitionData.getCampaign()); Assert.assertEquals(acquisition.getChannel(), acquisitionData.getChannel()); Assert.assertEquals(acquisition.getCurrency(), acquisitionData.getCurrency()); Assert.assertEquals(acquisition.getCostInCents(), acquisitionData.getCostInCents()); Assert.assertEquals(acquisition.getSubchannel(), acquisitionData.getSubchannel()); Assert.assertEquals(acquisition.getCampaign(), acquisitionData.getCampaign()); Assert.assertEquals(acquisition.getChannel(), acquisitionData.getChannel()); Assert.assertEquals(acquisition.getCurrency(), acquisitionData.getCurrency()); Assert.assertEquals(acquisition.getCostInCents(), acquisitionData.getCostInCents()); acquisitionData.setSubchannel("updated"); acquisitionData.setCampaign("updated"); acquisitionData.setCostInCents(0); acquisitionData.setCurrency("EUR"); acquisitionData.setChannel(AcquisitionChannel.OTHER); Assert.assertEquals(acquisition.getSubchannel(), "updated"); Assert.assertEquals(acquisition.getCampaign(), "updated"); Assert.assertEquals(acquisition.getChannel(), AcquisitionChannel.OTHER); Assert.assertEquals(acquisition.getCurrency(), "EUR"); Assert.assertEquals(acquisition.getCostInCents(), new Integer(0));
/** * Creates a random {@link AccountAcquisition} object for use in Tests given a seed * * @param seed The RNG seed * @return The random {@link AccountAcquisition} object */ public static AccountAcquisition createRandomAccountAcquisition(final int seed) { final AccountAcquisition acquisition = new AccountAcquisition(); acquisition.setCurrency("USD"); acquisition.setCampaign("mailchimp." + randomAlphaNumericString(10, seed)); acquisition.setChannel(AcquisitionChannel.MARKETING_CONTENT); acquisition.setCostInCents(randomInteger(1000, seed)); acquisition.setSubchannel(randomAlphaNumericString(50, seed)); return acquisition; } }
@Test(groups = "fast") public void testHashCodeAndEquality() throws Exception { // create accounts of the same value but difference references AccountAcquisition acquisition = TestUtils.createRandomAccountAcquisition(0); AccountAcquisition otherAcquisition = TestUtils.createRandomAccountAcquisition(0); assertNotEquals(System.identityHashCode(acquisition), System.identityHashCode(otherAcquisition)); assertEquals(acquisition.hashCode(), otherAcquisition.hashCode()); assertEquals(acquisition, otherAcquisition); }
@Test(groups = "fast") public void testSerialization() throws Exception { // See https://dev.recurly.com/docs/create-account-acquisition final String acquisitionData = "<account_acquisition href=\"https://api.recurly.com/v2/accounts/1/acquisition\">\n" + " <account href=\"https://your-subdomain.recurly.com/v2/accounts/1\"/>\n" + " <cost_in_cents type=\"integer\">199</cost_in_cents>\n" + " <currency>USD</currency>\n" + " <channel>blog</channel>\n" + " <subchannel>Whitepaper Blog Post</subchannel>\n" + " <campaign>mailchimp67a904de95.0914d8f4b4</campaign>\n" + " <created_at type=\"datetime\">2016-08-12T19:45:14Z</created_at>\n" + " <updated_at type=\"datetime\">2016-08-12T19:45:14Z</updated_at>\n" + "</account_acquisition>"; final AccountAcquisition acquisition = xmlMapper.readValue(acquisitionData, AccountAcquisition.class); Assert.assertEquals(acquisition.getHref(), "https://api.recurly.com/v2/accounts/1/acquisition"); verifyAccountAcquisition(acquisition); // Verify serialization final String acquisitionSerialized = xmlMapper.writeValueAsString(acquisition); final AccountAcquisition acquisition2 = xmlMapper.readValue(acquisitionSerialized, AccountAcquisition.class); verifyAccountAcquisition(acquisition2); }
private void verifyAccountAcquisition(final AccountAcquisition acquisition) { Assert.assertEquals(acquisition.getCampaign(), "mailchimp67a904de95.0914d8f4b4"); Assert.assertEquals(acquisition.getChannel(), AcquisitionChannel.BLOG); Assert.assertEquals(acquisition.getCurrency(), "USD"); Assert.assertEquals(acquisition.getCostInCents(), new Integer(199)); Assert.assertEquals(acquisition.getSubchannel(), "Whitepaper Blog Post"); } }
protected void setCreatedAt(final Object createdAt) { this.createdAt = dateTimeOrNull(createdAt); }
Assert.assertEquals(acquisition.getCurrency(), acquisitionData.getCurrency()); Assert.assertEquals(acquisition.getChannel(), acquisitionData.getChannel()); Assert.assertEquals(acquisition.getCampaign(), acquisitionData.getCampaign()); Assert.assertEquals(acquisition.getSubchannel(), acquisitionData.getSubchannel()); Assert.assertEquals(acquisition.getCostInCents(), acquisitionData.getCostInCents());
Assert.assertEquals(acquisition.getCurrency(), acquisitionData.getCurrency()); Assert.assertEquals(acquisition.getChannel(), acquisitionData.getChannel()); Assert.assertEquals(acquisition.getCampaign(), acquisitionData.getCampaign()); Assert.assertEquals(acquisition.getSubchannel(), acquisitionData.getSubchannel()); Assert.assertEquals(acquisition.getCostInCents(), acquisitionData.getCostInCents());