From e6e101610152893d9417a679dc2302fc9438a22f Mon Sep 17 00:00:00 2001 From: Paulo Pinho Date: Thu, 23 Nov 2023 17:10:32 -0300 Subject: [PATCH] add external payment phases GET /external_subscriptions/{external_subscription_id}/external_payment_phases GET /external_subscriptions/{external_subscription_id}/external_payment_phases/{external_payment_phase_id} GET /external_payment_phases/{external_payment_phase_id} --- .../ning/billing/recurly/RecurlyClient.java | 41 ++++ .../recurly/model/ExternalInvoice.java | 11 ++ .../recurly/model/ExternalPaymentPhase.java | 179 ++++++++++++++++++ .../recurly/model/ExternalPaymentPhases.java | 52 +++++ .../recurly/model/ExternalSubscription.java | 27 +++ .../recurly/model/TestExternalInvoice.java | 2 + .../recurly/model/TestExternalInvoices.java | 2 + .../model/TestExternalPaymentPhase.java | 65 +++++++ .../model/TestExternalPaymentPhases.java | 71 +++++++ .../model/TestExternalSubscription.java | 1 + .../model/TestExternalSubscriptions.java | 1 + 11 files changed, 452 insertions(+) create mode 100644 src/main/java/com/ning/billing/recurly/model/ExternalPaymentPhase.java create mode 100644 src/main/java/com/ning/billing/recurly/model/ExternalPaymentPhases.java create mode 100644 src/test/java/com/ning/billing/recurly/model/TestExternalPaymentPhase.java create mode 100644 src/test/java/com/ning/billing/recurly/model/TestExternalPaymentPhases.java diff --git a/src/main/java/com/ning/billing/recurly/RecurlyClient.java b/src/main/java/com/ning/billing/recurly/RecurlyClient.java index 0111fa84..afbedead 100644 --- a/src/main/java/com/ning/billing/recurly/RecurlyClient.java +++ b/src/main/java/com/ning/billing/recurly/RecurlyClient.java @@ -51,6 +51,8 @@ import com.ning.billing.recurly.model.ExternalAccounts; import com.ning.billing.recurly.model.ExternalInvoice; import com.ning.billing.recurly.model.ExternalInvoices; +import com.ning.billing.recurly.model.ExternalPaymentPhase; +import com.ning.billing.recurly.model.ExternalPaymentPhases; import com.ning.billing.recurly.model.GiftCard; import com.ning.billing.recurly.model.GiftCards; import com.ning.billing.recurly.model.Invoice; @@ -1323,6 +1325,45 @@ public ExternalInvoice getExternalInvoice(final String externalInvoiceUuid) { return doGET(ExternalInvoices.EXTERNAL_INVOICES_RESOURCE + "/" + urlEncode(externalInvoiceUuid), ExternalInvoice.class); } + /** + * Get a specific External Payment Phase + *

+ * Returns the requested external payment phase + * + * @param externalPaymentPhaseUuid external payment phase uuid + * @return The requested external payment phase + */ + public ExternalPaymentPhase getExternalPaymentPhase(final String externalPaymentPhaseUuid) { + return doGET(ExternalPaymentPhases.EXTERNAL_PAYMENT_PHASES_RESOURCE + "/" + urlEncode(externalPaymentPhaseUuid), ExternalPaymentPhase.class); + } + + /** + * Get External Payment Phases of an external subscription + *

+ * Returns all External Payment Phases for a given external subscription. + * + * @param externalSubscriptionUUID recurly external subscription uuid + * @return List of External Payment Phases for the given external subscription on success, null otherwise + */ + public ExternalPaymentPhases getExternalPaymentPhasesByExternalSubscription(final String externalSubscriptionUUID) { + return doGET(ExternalSubscriptions.EXTERNAL_SUBSCRIPTIONS_RESOURCE + "/" + urlEncode(externalSubscriptionUUID) + ExternalPaymentPhases.EXTERNAL_PAYMENT_PHASES_RESOURCE, + ExternalPaymentPhases.class); + } + + /** + * Get External Payment Phase of an external subscription + *

+ * Returns an External Payment Phase for a given external subscription. + * + * @param externalSubscriptionUUID recurly external subscription uuid + * @param externalPaymentPhaseUUID recurly external payment phase uuid + * @return An External Payment Phase for the given external subscription on success, null otherwise + */ + public ExternalPaymentPhase getExternalPaymentPhaseByExternalSubscription(final String externalSubscriptionUUID, final String externalPaymentPhaseUUID) { + return doGET(ExternalSubscriptions.EXTERNAL_SUBSCRIPTIONS_RESOURCE + "/" + urlEncode(externalSubscriptionUUID) + ExternalPaymentPhases.EXTERNAL_PAYMENT_PHASES_RESOURCE + "/" + urlEncode(externalPaymentPhaseUUID), + ExternalPaymentPhase.class); + } + /** * Get External Products *

diff --git a/src/main/java/com/ning/billing/recurly/model/ExternalInvoice.java b/src/main/java/com/ning/billing/recurly/model/ExternalInvoice.java index ab113838..ceaaed3d 100644 --- a/src/main/java/com/ning/billing/recurly/model/ExternalInvoice.java +++ b/src/main/java/com/ning/billing/recurly/model/ExternalInvoice.java @@ -33,6 +33,9 @@ public class ExternalInvoice extends RecurlyObject { @XmlElement(name = "external_subscription") private ExternalSubscription externalSubscription; + @XmlElement(name = "external_payment_phase") + private ExternalPaymentPhase externalPaymentPhase; + @XmlElement(name = "external_id") private String externalId; @@ -74,6 +77,14 @@ public void setExternalSubscription(final ExternalSubscription externalSubscript this.externalSubscription = externalSubscription; } + public ExternalPaymentPhase getExternalPaymentPhase() { + return this.externalPaymentPhase; + } + + public void setExternalPaymentPhase(final ExternalPaymentPhase externalPaymentPhase) { + this.externalPaymentPhase = externalPaymentPhase; + } + public String getExternalId() { return this.externalId; } diff --git a/src/main/java/com/ning/billing/recurly/model/ExternalPaymentPhase.java b/src/main/java/com/ning/billing/recurly/model/ExternalPaymentPhase.java new file mode 100644 index 00000000..84468aa0 --- /dev/null +++ b/src/main/java/com/ning/billing/recurly/model/ExternalPaymentPhase.java @@ -0,0 +1,179 @@ +/* + * Copyright 2010-2014 Ning, Inc. + * Copyright 2014-2015 The Billing Project, LLC + * + * The Billing Project licenses this file to you under the Apache License, version 2.0 + * (the "License"); you may not use this file except in compliance with the + * License. You may obtain a copy of the License at: + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT + * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the + * License for the specific language governing permissions and limitations + * under the License. + */ +package com.ning.billing.recurly.model; + +import java.math.BigDecimal; + +import javax.xml.bind.annotation.XmlElement; +import javax.xml.bind.annotation.XmlRootElement; + +import org.joda.time.DateTime; + +@XmlRootElement(name = "external_payment_phase") +public class ExternalPaymentPhase extends RecurlyObject { + + @XmlElement(name = "started_at") + private DateTime startedAt; + + @XmlElement(name = "ends_at") + private DateTime endsAt; + + @XmlElement(name = "starting_billing_period_index") + private int startingBillingPeriodIndex; + + @XmlElement(name = "ending_billing_period_index") + private int endingBillingPeriodIndex; + + @XmlElement(name = "offer_type") + private String offerType; + + @XmlElement(name = "offer_name") + private String offerName; + + @XmlElement(name = "period_count") + private int periodCount; + + @XmlElement(name = "period_length") + private String periodLength; + + @XmlElement(name = "amount") + private BigDecimal amount; + + @XmlElement(name = "currency") + private String currency; + + @XmlElement(name = "created_at") + private DateTime createdAt; + + @XmlElement(name = "updated_at") + private DateTime updatedAt; + + public DateTime getStartedAt() { + return this.startedAt; + } + + public void setStartedAt(final Object startedAt) { + this.startedAt = dateTimeOrNull(startedAt); + } + + public DateTime getEndsAt() { + return this.endsAt; + } + + public void setEndsAt(final Object endsAt) { + this.endsAt = dateTimeOrNull(endsAt); + } + + public int getStartingBillingPeriodIndex() { + return this.startingBillingPeriodIndex; + } + + public void setStartingBillingPeriodIndex(final Object startingBillingPeriodIndex) { + this.startingBillingPeriodIndex = integerOrNull(startingBillingPeriodIndex); + } + + public int getEndingBillingPeriodIndex() { + return this.endingBillingPeriodIndex; + } + + public void setEndingBillingPeriodIndex(final Object endingBillingPeriodIndex) { + this.endingBillingPeriodIndex = integerOrNull(endingBillingPeriodIndex); + } + + public String getOfferType() { + return this.offerType; + } + + public void setOfferType(final Object offerType) { + this.offerType = stringOrNull(offerType); + } + + public String getOfferName() { + return this.offerName; + } + + public void setOfferName(final Object offerName) { + this.offerName = stringOrNull(offerName); + } + + public int getPeriodCount() { + return this.periodCount; + } + + public void setPeriodCount(final Object periodCount) { + this.periodCount = integerOrNull(periodCount); + } + + public String getPeriodLength() { + return this.periodLength; + } + + public void setPeriodLength(final Object periodLength) { + this.periodLength = stringOrNull(periodLength); + } + + public BigDecimal getAmount() { + return this.amount; + } + + public void setAmount(final Object amount) { + this.amount = bigDecimalOrNull(amount); + } + + public String getCurrency() { + return this.currency; + } + + public void setCurrency(final Object currency) { + this.currency = stringOrNull(currency); + } + + public DateTime getCreatedAt() { + return this.createdAt; + } + + public void setCreatedAt(final Object createdAt) { + this.createdAt = dateTimeOrNull(createdAt); + } + + public DateTime getUpdatedAt() { + return this.updatedAt; + } + + public void setUpdatedAt(final Object updatedAt) { + this.updatedAt = dateTimeOrNull(updatedAt); + } + + @Override + public String toString() { + final StringBuilder sb = new StringBuilder("ExternalPaymentPhase{"); + sb.append("started_at=").append(startedAt); + sb.append(", ends_at=").append(endsAt); + sb.append(", starting_billing_period_index=").append(startingBillingPeriodIndex); + sb.append(", ending_billing_period_index=").append(endingBillingPeriodIndex); + sb.append(", offer_type=").append(offerType); + sb.append(", offer_name=").append(offerName); + sb.append(", period_count=").append(periodCount); + sb.append(", period_length=").append(periodLength); + sb.append(", amount=").append(amount); + sb.append(", currency=").append(currency); + sb.append(", createdAt=").append(createdAt); + sb.append(", updatedAt=").append(updatedAt); + sb.append('}'); + return sb.toString(); + } +} diff --git a/src/main/java/com/ning/billing/recurly/model/ExternalPaymentPhases.java b/src/main/java/com/ning/billing/recurly/model/ExternalPaymentPhases.java new file mode 100644 index 00000000..d1c748b3 --- /dev/null +++ b/src/main/java/com/ning/billing/recurly/model/ExternalPaymentPhases.java @@ -0,0 +1,52 @@ +/* + * Copyright 2010-2014 Ning, Inc. + * Copyright 2014-2015 The Billing Project, LLC + * + * The Billing Project licenses this file to you under the Apache License, version 2.0 + * (the "License"); you may not use this file except in compliance with the + * License. You may obtain a copy of the License at: + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT + * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the + * License for the specific language governing permissions and limitations + * under the License. + */ +package com.ning.billing.recurly.model; + +import javax.xml.bind.annotation.XmlRootElement; +import javax.xml.bind.annotation.XmlTransient; + +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonSetter; + +@XmlRootElement(name = "external_payment_phases") +public class ExternalPaymentPhases extends RecurlyObjects { + + @XmlTransient + public static final String EXTERNAL_PAYMENT_PHASES_RESOURCE = "/external_payment_phases"; + + @XmlTransient + public static final String PROPERTY_NAME = "external_payment_phase"; + + @JsonSetter(value = PROPERTY_NAME) + @Override + public void setRecurlyObject(final ExternalPaymentPhase value) { + super.setRecurlyObject(value); + } + + @JsonIgnore + @Override + public ExternalPaymentPhases getStart() { + return getStart(ExternalPaymentPhases.class); + } + + @JsonIgnore + @Override + public ExternalPaymentPhases getNext() { + return getNext(ExternalPaymentPhases.class); + } + +} diff --git a/src/main/java/com/ning/billing/recurly/model/ExternalSubscription.java b/src/main/java/com/ning/billing/recurly/model/ExternalSubscription.java index c3424f97..02823a65 100644 --- a/src/main/java/com/ning/billing/recurly/model/ExternalSubscription.java +++ b/src/main/java/com/ning/billing/recurly/model/ExternalSubscription.java @@ -17,6 +17,7 @@ package com.ning.billing.recurly.model; import javax.xml.bind.annotation.XmlElement; +import javax.xml.bind.annotation.XmlElementWrapper; import javax.xml.bind.annotation.XmlRootElement; import org.joda.time.DateTime; @@ -29,6 +30,16 @@ public class ExternalSubscription extends RecurlyObject { @XmlElement(name = "external_product_reference") private ExternalProductReference externalProductReference; + @XmlElementWrapper(name = "external_invoices") + @XmlElement(name = "external_invoice") + private ExternalInvoices externalInvoices; + + + @XmlElementWrapper(name = "external_payment_phases") + @XmlElement(name = "external_payment_phase") + private ExternalPaymentPhases externalPaymentPhases; + + @XmlElement(name = "last_purchased") private DateTime lastPurchased; @@ -87,6 +98,22 @@ public void setExternalProductReference(final ExternalProductReference externalP this.externalProductReference = externalProductReference; } + public ExternalInvoices getExternalInvoices() { + return this.externalInvoices; + } + + public void setExternalInvoices(final ExternalInvoices externalInvoices) { + this.externalInvoices = externalInvoices; + } + + public ExternalPaymentPhases getExternalPaymentPhases() { + return this.externalPaymentPhases; + } + + public void setExternalPaymentPhases(final ExternalPaymentPhases externalPaymentPhases) { + this.externalPaymentPhases = externalPaymentPhases; + } + public DateTime getLastPurchased() { return lastPurchased; } diff --git a/src/test/java/com/ning/billing/recurly/model/TestExternalInvoice.java b/src/test/java/com/ning/billing/recurly/model/TestExternalInvoice.java index 00175d39..0d925540 100644 --- a/src/test/java/com/ning/billing/recurly/model/TestExternalInvoice.java +++ b/src/test/java/com/ning/billing/recurly/model/TestExternalInvoice.java @@ -32,6 +32,7 @@ public void testDeserialization() throws Exception { "" + " " + " " + + " " + " external_id" + " paid" + " USD" + @@ -58,6 +59,7 @@ public void testDeserialization() throws Exception { Assert.assertEquals(externalInvoice.getHref(), "https://your-subdomain.recurly.com/v2/external_invoices/scaig66ovogw"); Assert.assertEquals(externalInvoice.getAccount().getHref(), "https://your-subdomain.recurly.com/v2/accounts/scaig66ovoga"); Assert.assertEquals(externalInvoice.getExternalSubscription().getHref(), "https://your-subdomain.recurly.com/v2/external_subscriptions/scaig66ovoge"); + Assert.assertEquals(externalInvoice.getExternalPaymentPhase().getHref(), "https://your-subdomain.recurly.com/v2/external_payment_phases/twqswp6wgq68"); Assert.assertEquals(externalInvoice.getExternalId(), "external_id"); Assert.assertEquals(externalInvoice.getState(), "paid"); Assert.assertEquals(externalInvoice.getCurrency(), "USD"); diff --git a/src/test/java/com/ning/billing/recurly/model/TestExternalInvoices.java b/src/test/java/com/ning/billing/recurly/model/TestExternalInvoices.java index c871ed43..05b82868 100644 --- a/src/test/java/com/ning/billing/recurly/model/TestExternalInvoices.java +++ b/src/test/java/com/ning/billing/recurly/model/TestExternalInvoices.java @@ -33,6 +33,7 @@ public void testDeserialization() throws Exception { " " + " " + " " + + " " + " external_id" + " paid" + " USD" + @@ -62,6 +63,7 @@ public void testDeserialization() throws Exception { Assert.assertEquals(externalInvoice.getHref(), "https://your-subdomain.recurly.com/v2/external_invoices/scaig66ovogw"); Assert.assertEquals(externalInvoice.getAccount().getHref(), "https://your-subdomain.recurly.com/v2/accounts/scaig66ovoga"); Assert.assertEquals(externalInvoice.getExternalSubscription().getHref(), "https://your-subdomain.recurly.com/v2/external_subscriptions/scaig66ovoge"); + Assert.assertEquals(externalInvoice.getExternalPaymentPhase().getHref(), "https://your-subdomain.recurly.com/v2/external_payment_phases/twqswp6wgq68"); Assert.assertEquals(externalInvoice.getExternalId(), "external_id"); Assert.assertEquals(externalInvoice.getState(), "paid"); Assert.assertEquals(externalInvoice.getCurrency(), "USD"); diff --git a/src/test/java/com/ning/billing/recurly/model/TestExternalPaymentPhase.java b/src/test/java/com/ning/billing/recurly/model/TestExternalPaymentPhase.java new file mode 100644 index 00000000..adaf46b5 --- /dev/null +++ b/src/test/java/com/ning/billing/recurly/model/TestExternalPaymentPhase.java @@ -0,0 +1,65 @@ +/* + * Copyright 2010-2014 Ning, Inc. + * Copyright 2014-2015 The Billing Project, LLC + * + * The Billing Project licenses this file to you under the Apache License, version 2.0 + * (the "License"); you may not use this file except in compliance with the + * License. You may obtain a copy of the License at: + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT + * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the + * License for the specific language governing permissions and limitations + * under the License. + */ + + package com.ning.billing.recurly.model; + + import java.math.BigDecimal; + + import org.joda.time.DateTime; + import org.testng.Assert; + import org.testng.annotations.Test; + + public class TestExternalPaymentPhase extends TestModelBase { + + @Test(groups = "fast") + public void testDeserialization() throws Exception { + final String externalPaymentPhaseData = + "\n" + + "" + + " twqswp627ri3" + + " 2023-11-15T00:00:00Z" + + " 2023-11-17T21:27:10Z" + + " 1" + + " 2" + + " FREE_TRIAL" + + " introductory" + + " 2" + + " TWO WEEKS" + + " 1.99" + + " USD" + + " 2022-09-12T18:40:51Z" + + " 2022-09-12T18:40:51Z" + + ""; + + final ExternalPaymentPhase externalPaymentPhase = xmlMapper.readValue(externalPaymentPhaseData, ExternalPaymentPhase.class); + + Assert.assertEquals(externalPaymentPhase.getHref(), "https://your-subdomain.recurly.com/v2/external_invoices/twqswp627ri3"); + Assert.assertEquals(externalPaymentPhase.getStartedAt(), new DateTime("2023-11-15T00:00:00Z")); + Assert.assertEquals(externalPaymentPhase.getEndsAt(), new DateTime("2023-11-17T21:27:10Z")); + Assert.assertEquals(externalPaymentPhase.getStartingBillingPeriodIndex(), 1); + Assert.assertEquals(externalPaymentPhase.getEndingBillingPeriodIndex(), 2); + Assert.assertEquals(externalPaymentPhase.getOfferType(), "FREE_TRIAL"); + Assert.assertEquals(externalPaymentPhase.getOfferName(), "introductory"); + Assert.assertEquals(externalPaymentPhase.getPeriodCount(), 2); + Assert.assertEquals(externalPaymentPhase.getPeriodLength(), "TWO WEEKS"); + Assert.assertEquals(externalPaymentPhase.getAmount(), new BigDecimal("1.99")); + Assert.assertEquals(externalPaymentPhase.getCurrency(), "USD"); + Assert.assertEquals(externalPaymentPhase.getCreatedAt(), new DateTime("2022-09-12T18:40:51Z")); + Assert.assertEquals(externalPaymentPhase.getUpdatedAt(), new DateTime("2022-09-12T18:40:51Z")); + } + } + \ No newline at end of file diff --git a/src/test/java/com/ning/billing/recurly/model/TestExternalPaymentPhases.java b/src/test/java/com/ning/billing/recurly/model/TestExternalPaymentPhases.java new file mode 100644 index 00000000..2cc35b87 --- /dev/null +++ b/src/test/java/com/ning/billing/recurly/model/TestExternalPaymentPhases.java @@ -0,0 +1,71 @@ +/* + * Copyright 2010-2014 Ning, Inc. + * Copyright 2014-2015 The Billing Project, LLC + * + * The Billing Project licenses this file to you under the Apache License, version 2.0 + * (the "License"); you may not use this file except in compliance with the + * License. You may obtain a copy of the License at: + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT + * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the + * License for the specific language governing permissions and limitations + * under the License. + */ + + package com.ning.billing.recurly.model; + + import java.math.BigDecimal; + + import org.joda.time.DateTime; + import org.testng.Assert; + import org.testng.annotations.Test; + + public class TestExternalPaymentPhases extends TestModelBase { + + @Test(groups = "fast") + public void testDeserialization() throws Exception { + final String externalPaymentPhasesData = + "\n" + + "" + + " " + + " twqswp627ri3" + + " 2023-11-15T00:00:00Z" + + " 2023-11-17T21:27:10Z" + + " 1" + + " 2" + + " FREE_TRIAL" + + " introductory" + + " 2" + + " TWO WEEKS" + + " 1.99" + + " USD" + + " 2022-09-12T18:40:51Z" + + " 2022-09-12T18:40:51Z" + + " " + + ""; + + + final ExternalPaymentPhases externalPaymentPhases = xmlMapper.readValue(externalPaymentPhasesData, ExternalPaymentPhases.class); + Assert.assertEquals(externalPaymentPhases.size(), 1); + + final ExternalPaymentPhase externalPaymentPhase = externalPaymentPhases.get(0); + + Assert.assertEquals(externalPaymentPhase.getHref(), "https://your-subdomain.recurly.com/v2/external_invoices/twqswp627ri3"); + Assert.assertEquals(externalPaymentPhase.getStartedAt(), new DateTime("2023-11-15T00:00:00Z")); + Assert.assertEquals(externalPaymentPhase.getEndsAt(), new DateTime("2023-11-17T21:27:10Z")); + Assert.assertEquals(externalPaymentPhase.getStartingBillingPeriodIndex(), 1); + Assert.assertEquals(externalPaymentPhase.getEndingBillingPeriodIndex(), 2); + Assert.assertEquals(externalPaymentPhase.getOfferType(), "FREE_TRIAL"); + Assert.assertEquals(externalPaymentPhase.getOfferName(), "introductory"); + Assert.assertEquals(externalPaymentPhase.getPeriodCount(), 2); + Assert.assertEquals(externalPaymentPhase.getPeriodLength(), "TWO WEEKS"); + Assert.assertEquals(externalPaymentPhase.getAmount(), new BigDecimal("1.99")); + Assert.assertEquals(externalPaymentPhase.getCurrency(), "USD"); + Assert.assertEquals(externalPaymentPhase.getCreatedAt(), new DateTime("2022-09-12T18:40:51Z")); + Assert.assertEquals(externalPaymentPhase.getUpdatedAt(), new DateTime("2022-09-12T18:40:51Z")); + } + } + \ No newline at end of file diff --git a/src/test/java/com/ning/billing/recurly/model/TestExternalSubscription.java b/src/test/java/com/ning/billing/recurly/model/TestExternalSubscription.java index 77415603..e27dd958 100644 --- a/src/test/java/com/ning/billing/recurly/model/TestExternalSubscription.java +++ b/src/test/java/com/ning/billing/recurly/model/TestExternalSubscription.java @@ -29,6 +29,7 @@ public void testDeserialization() throws Exception { "\n" + "" + " " + + " " + " " + " rgybkg3d1l41" + " apple-code" + diff --git a/src/test/java/com/ning/billing/recurly/model/TestExternalSubscriptions.java b/src/test/java/com/ning/billing/recurly/model/TestExternalSubscriptions.java index 3af81115..255ab1b4 100644 --- a/src/test/java/com/ning/billing/recurly/model/TestExternalSubscriptions.java +++ b/src/test/java/com/ning/billing/recurly/model/TestExternalSubscriptions.java @@ -30,6 +30,7 @@ public void testDeserialization() throws Exception { "" + " " + " " + + " " + " " + " rgybkg3d1l41" + " apple-code" +