Skip to content

Commit 34d71a7

Browse files
authored
Merge pull request #77 from Bandwidth/SWI-3335
SWI-3335 Make DateTime fields nullable in Tn model
2 parents 64314c0 + 31bb96a commit 34d71a7

4 files changed

Lines changed: 32 additions & 10 deletions

File tree

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -198,3 +198,4 @@ Thumbs.db
198198
.vscode
199199

200200
.vs
201+
.idea

Bandwidth.Iris.Tests/Models/TnTests.cs

Lines changed: 22 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,26 @@ public void GetTest()
3737
}
3838
}
3939

40+
public void GetTestWithNullDateTime()
41+
{
42+
using (var server = new HttpServer(new RequestHandler
43+
{
44+
EstimatedMethod = "GET",
45+
EstimatedPathAndQuery = string.Format("/v1.0/tns/1234", Helper.AccountId),
46+
ContentToSend = new StringContent(TestXmlStrings.TnResponseWithNullDates, Encoding.UTF8, "application/xml")
47+
}))
48+
{
49+
var client = Helper.CreateClient();
50+
var result = Tn.Get(client, "1234").Result;
51+
if (server.Error != null) throw server.Error;
52+
Assert.Equal("1234", result.TelephoneNumber);
53+
Assert.Equal("Inservice", result.Status);
54+
Assert.Equal("5f3a4dab-aac7-4b0a-8ee4-1b6a67ae04be", result.OrderId);
55+
Assert.Equal("NEW_NUMBER_ORDER", result.OrderType);
56+
Assert.Null(result.LastModifiedDate);
57+
}
58+
}
59+
4060
[Fact]
4161
public void ListTest()
4262
{
@@ -48,7 +68,7 @@ public void ListTest()
4868
}))
4969
{
5070
var client = Helper.CreateClient();
51-
var result = Tn.List(client, new Dictionary<string, object>{{"npa", "818"}}).Result;
71+
var result = Tn.List(client, new Dictionary<string, object> { { "npa", "818" } }).Result;
5272
if (server.Error != null) throw server.Error;
5373
Assert.Equal(5, result.TelephoneNumberCount);
5474

@@ -107,7 +127,7 @@ public void GetSitesTest()
107127
}))
108128
{
109129
var client = Helper.CreateClient();
110-
var tn = new Tn {TelephoneNumber = "1234", Client = client};
130+
var tn = new Tn { TelephoneNumber = "1234", Client = client };
111131
var result = tn.GetSites().Result;
112132
if (server.Error != null) throw server.Error;
113133
Assert.Equal("1435", result.Id);

Bandwidth.Iris.Tests/TestXmlStrings.cs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1338,6 +1338,7 @@ public static class TestXmlStrings
13381338
public static string CoveredRateCentersResponse = "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?><CoveredRateCenters><CoveredRateCenter><Abbreviation>ACME</Abbreviation><Name>ACME</Name></CoveredRateCenter></CoveredRateCenters>";
13391339
public static string CitiesResponse = "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?><CityResponse><ResultCount>2</ResultCount><Cities><City><RcAbbreviation>SOUTHEPINS</RcAbbreviation><Name>ABERDEEN</Name></City><City><RcAbbreviation>JULIAN</RcAbbreviation><Name>ADVANCE</Name></City></Cities></CityResponse>";
13401340
public static string TnResponse = "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?><TelephoneNumberResponse><TelephoneNumber>1234</TelephoneNumber><Status>Inservice</Status><LastModifiedDate>2014-05-09T21:12:03.000Z</LastModifiedDate><OrderCreateDate>2014-05-09T21:12:03.835Z</OrderCreateDate><OrderId>5f3a4dab-aac7-4b0a-8ee4-1b6a67ae04be</OrderId><OrderType>NEW_NUMBER_ORDER</OrderType><SiteId>1091</SiteId><AccountId>9500149</AccountId></TelephoneNumberResponse>";
1341+
public static string TnResponseWithNullDates = "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?><TelephoneNumberResponse><TelephoneNumber>1234</TelephoneNumber><Status>Inservice</Status><LastModifiedDate/><OrderCreateDate>2014-05-09T21:12:03.835Z</OrderCreateDate><OrderId>5f3a4dab-aac7-4b0a-8ee4-1b6a67ae04be</OrderId><OrderType>NEW_NUMBER_ORDER</OrderType><SiteId>1091</SiteId><AccountId>9500149</AccountId></TelephoneNumberResponse>";
13411342
public static string TnsListResponse = "<?xml version=\"1.0\"?><TelephoneNumbersResponse><TelephoneNumberCount>5</TelephoneNumberCount><Links><first></first><next></next></Links><TelephoneNumbers><TelephoneNumber><City>CARY</City><Lata>426</Lata><State>NC</State><FullNumber>9192381138</FullNumber><Tier>0</Tier><VendorId>49</VendorId><VendorName>Bandwidth CLEC</VendorName><RateCenter>CARY</RateCenter><Status>Inservice</Status><AccountId>9900008</AccountId><LastModified>2013-12-05T05:58:27.000Z</LastModified></TelephoneNumber><TelephoneNumber><City>CARY</City><Lata>426</Lata><FullNumber>9192381139</FullNumber><Tier>0</Tier><VendorId>49</VendorId><VendorName>Bandwidth CLEC</VendorName><RateCenter>CARY</RateCenter><Status>Inservice</Status><AccountId>9900000</AccountId><LastModified>2013-12-05T05:58:27.000Z</LastModified></TelephoneNumber></TelephoneNumbers></TelephoneNumbersResponse>";
13421343
public static string TnSitesResponse = "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?><Site><Id>1435</Id><Name>Sales Training</Name></Site>";
13431344
public static string TnSipPeersResponse = "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?><SipPeer><Id>4064</Id><Name>Sales</Name></SipPeer>";

Bandwidth.Iris/Model/Tn.cs

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ public static async Task<TelephoneNumbersResponse> List(Client client, IDictiona
2424
{
2525
return await client.MakeGetRequest<TelephoneNumbersResponse>(TnsPath, query);
2626
}
27-
27+
2828
#if !PCL
2929
public static Task<Tn> Get(string number)
3030
{
@@ -72,7 +72,7 @@ public async Task<TelephoneNumberRateCenter> GetRateCenter()
7272
}
7373
}
7474

75-
75+
7676
public async Task<TelephoneNumberDetails> GetDetails()
7777
{
7878
return
@@ -89,17 +89,17 @@ public async Task<string> GetLata()
8989
return xml.Descendants("Lata").First().Value;
9090
}
9191
}
92-
92+
9393
public string TelephoneNumber { get; set; }
9494
public string Status { get; set; }
95-
public DateTime LastModifiedDate { get; set; }
96-
public DateTime OrderCreateDate { get; set; }
95+
public DateTime? LastModifiedDate { get; set; }
96+
public DateTime? OrderCreateDate { get; set; }
9797
public string OrderId { get; set; }
9898
public string OrderType { get; set; }
9999
public string SiteId { get; set; }
100100
public string AccountId { get; set; }
101101

102-
102+
103103
}
104104

105105
[XmlType("SipPeer")]
@@ -124,7 +124,7 @@ public class TelephoneNumberRateCenter
124124

125125
public class TelephoneNumberResponse
126126
{
127-
public TelephoneNumberDetails TelephoneNumberDetails { get; set; }
127+
public TelephoneNumberDetails TelephoneNumberDetails { get; set; }
128128
}
129129

130130
public class TelephoneNumberDetails
@@ -138,7 +138,7 @@ public class TelephoneNumberDetails
138138
public string Tier { get; set; }
139139
public string VendorId { get; set; }
140140
public string VendorName { get; set; }
141-
public DateTime LastModified { get; set; }
141+
public DateTime? LastModified { get; set; }
142142
public string State { get; set; }
143143
public Features Features { get; set; }
144144
}

0 commit comments

Comments
 (0)