Skip to content

Commit 7fdd34f

Browse files
committed
More nested options converted
1 parent 1d21540 commit 7fdd34f

File tree

4 files changed

+54
-39
lines changed

4 files changed

+54
-39
lines changed
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
namespace Stripe
2+
{
3+
using System;
4+
using Newtonsoft.Json;
5+
using Stripe.Infrastructure;
6+
7+
public class SourceMandateAcceptanceOptions : INestedOptions
8+
{
9+
[JsonProperty("date")]
10+
public DateTime? Date { get; set; }
11+
12+
[JsonProperty("ip")]
13+
public string Ip { get; set; }
14+
15+
[JsonProperty("notification_method")]
16+
public string NotificationMethod { get; set; }
17+
18+
[JsonProperty("status")]
19+
public string Status { get; set; }
20+
21+
[JsonProperty("user_agent")]
22+
public string UserAgent { get; set; }
23+
}
24+
}

src/Stripe.net/Services/Sources/SourceMandateOptions.cs

+2-14
Original file line numberDiff line numberDiff line change
@@ -6,19 +6,7 @@ namespace Stripe
66

77
public class SourceMandateOptions : INestedOptions
88
{
9-
[JsonProperty("acceptance[date]")]
10-
public DateTime? MandateAcceptanceDate { get; set; }
11-
12-
[JsonProperty("acceptance[ip]")]
13-
public string MandateAcceptanceIp { get; set; }
14-
15-
[JsonProperty("acceptance[status]")]
16-
public string MandateAcceptanceStatus { get; set; }
17-
18-
[JsonProperty("acceptance[user_agent]")]
19-
public string MandateAcceptanceUserAgent { get; set; }
20-
21-
[JsonProperty("notification_method")]
22-
public string MandateNotificationMethod { get; set; }
9+
[JsonProperty("acceptance")]
10+
public SourceMandateAcceptanceOptions Acceptance { get; set; }
2311
}
2412
}

src/Stripe.net/Services/Sources/SourceOwnerOptions.cs

+5-20
Original file line numberDiff line numberDiff line change
@@ -4,31 +4,16 @@
44

55
public class SourceOwnerOptions : INestedOptions
66
{
7-
[JsonProperty("[owner][address][city]")]
8-
public string City { get; set; }
7+
[JsonProperty("address")]
8+
public AddressOptions Address { get; set; }
99

10-
[JsonProperty("[owner][address][country]")]
11-
public string Country { get; set; }
12-
13-
[JsonProperty("[owner][address][line1]")]
14-
public string Line1 { get; set; }
15-
16-
[JsonProperty("[owner][address][line2]")]
17-
public string Line2 { get; set; }
18-
19-
[JsonProperty("[owner][address][postal_code]")]
20-
public string PostalCode { get; set; }
21-
22-
[JsonProperty("[owner][address][state]")]
23-
public string State { get; set; }
24-
25-
[JsonProperty("[owner][email]")]
10+
[JsonProperty("email")]
2611
public string Email { get; set; }
2712

28-
[JsonProperty("[owner][name]")]
13+
[JsonProperty("name")]
2914
public string Name { get; set; }
3015

31-
[JsonProperty("[owner][phone]")]
16+
[JsonProperty("phone")]
3217
public string Phone { get; set; }
3318
}
3419
}

src/StripeTests/Services/Sources/SourceServiceTest.cs

+23-5
Original file line numberDiff line numberDiff line change
@@ -26,11 +26,29 @@ public SourceServiceTest()
2626
Currency = "usd",
2727
Mandate = new SourceMandateOptions
2828
{
29-
MandateAcceptanceDate = DateTime.Parse("Mon, 01 Jan 2001 00:00:00Z"),
30-
MandateAcceptanceIp = "127.0.0.1",
31-
MandateAcceptanceStatus = "accepted",
32-
MandateAcceptanceUserAgent = "User-Agent",
33-
MandateNotificationMethod = "manual",
29+
Acceptance = new SourceMandateAcceptanceOptions
30+
{
31+
Date = DateTime.Parse("Mon, 01 Jan 2001 00:00:00Z"),
32+
Ip = "127.0.0.1",
33+
NotificationMethod = "manual",
34+
Status = "accepted",
35+
UserAgent = "User-Agent",
36+
},
37+
},
38+
Owner = new SourceOwnerOptions
39+
{
40+
Address = new AddressOptions
41+
{
42+
State = "CA",
43+
City = "City",
44+
Line1 = "Line1",
45+
Line2 = "Line2",
46+
PostalCode = "90210",
47+
Country = "US",
48+
},
49+
Email = "email@stripe.com",
50+
Name = "Owner Name",
51+
Phone = "5555555555",
3452
},
3553
Receiver = new SourceReceiverOptions
3654
{

0 commit comments

Comments
 (0)