Skip to content

Commit

Permalink
Add enum support for SubscriptionTrialEnd on the Upcoming Invoice API
Browse files Browse the repository at this point in the history
  • Loading branch information
remi-stripe committed Feb 16, 2021
1 parent d73f54f commit cb82368
Show file tree
Hide file tree
Showing 4 changed files with 36 additions and 4 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -54,8 +54,8 @@ public class UpcomingInvoiceListLineItemsOptions : ListOptions
public DateTime? SubscriptionProrationDate { get; set; }

[JsonProperty("subscription_trial_end")]
[JsonConverter(typeof(UnixDateTimeConverter))]
public DateTime? SubscriptionTrialEnd { get; set; }
[JsonConverter(typeof(AnyOfConverter))]
public AnyOf<DateTime?, SubscriptionTrialEnd> SubscriptionTrialEnd { get; set; }

[JsonProperty("subscription_trial_from_plan")]
public bool? SubscriptionTrialFromPlan { get; set; }
Expand Down
4 changes: 2 additions & 2 deletions src/Stripe.net/Services/Invoices/UpcomingInvoiceOptions.cs
Original file line number Diff line number Diff line change
Expand Up @@ -61,8 +61,8 @@ public class UpcomingInvoiceOptions : BaseOptions
public DateTime? SubscriptionStartDate { get; set; }

[JsonProperty("subscription_trial_end")]
[JsonConverter(typeof(UnixDateTimeConverter))]
public DateTime? SubscriptionTrialEnd { get; set; }
[JsonConverter(typeof(AnyOfConverter))]
public AnyOf<DateTime?, SubscriptionTrialEnd> SubscriptionTrialEnd { get; set; }

[JsonProperty("subscription_trial_from_plan")]
public bool? SubscriptionTrialFromPlan { get; set; }
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,22 @@ public void SerializeSubscriptionBillingCycleAnchor()
},
want = "subscription_billing_cycle_anchor=unchanged",
},
new
{
options = new UpcomingInvoiceListLineItemsOptions
{
SubscriptionTrialEnd = DateTime.Parse("Fri, 13 Feb 2009 23:31:30Z"),
},
want = "subscription_trial_end=1234567890",
},
new
{
options = new UpcomingInvoiceListLineItemsOptions
{
SubscriptionTrialEnd = SubscriptionTrialEnd.Now,
},
want = "subscription_trial_end=now",
},
};

foreach (var testCase in testCases)
Expand Down
16 changes: 16 additions & 0 deletions src/StripeTests/Services/Invoices/UpcomingInvoiceOptionsTest.cs
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,22 @@ public void SerializeSubscriptionBillingCycleAnchor()
},
want = "subscription_billing_cycle_anchor=unchanged",
},
new
{
options = new UpcomingInvoiceOptions
{
SubscriptionTrialEnd = DateTime.Parse("Fri, 13 Feb 2009 23:31:30Z"),
},
want = "subscription_trial_end=1234567890",
},
new
{
options = new UpcomingInvoiceOptions
{
SubscriptionTrialEnd = SubscriptionTrialEnd.Now,
},
want = "subscription_trial_end=now",
},
};

foreach (var testCase in testCases)
Expand Down

0 comments on commit cb82368

Please sign in to comment.