Skip to content

Commit 603f765

Browse files
.NET 8 Support (#39)
* Updated project files to support .NET 8 * Updated dotnet-version in workflows * Updated Moq and NUnit in test libraries
1 parent 6905d9a commit 603f765

File tree

14 files changed

+67
-66
lines changed

14 files changed

+67
-66
lines changed

.github/workflows/dotnet.pr.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ jobs:
1313
- name: Setup .NET
1414
uses: actions/setup-dotnet@v1
1515
with:
16-
dotnet-version: 7.0.x
16+
dotnet-version: 8.0.x
1717
- name: Build XUMM.NET.SDK
1818
run: dotnet build --configuration Release ./src/XUMM.NET.SDK/XUMM.NET.SDK.csproj
1919
- name: Build XUMM.NET.SDK.Webhooks

.github/workflows/dotnet.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ jobs:
1818
- name: Setup .NET
1919
uses: actions/setup-dotnet@v1
2020
with:
21-
dotnet-version: 7.0.x
21+
dotnet-version: 8.0.x
2222
- uses: nuget/setup-nuget@v1
2323
with:
2424
nuget-api-key: ${{ secrets.NUGET_APIKEY }}

examples/XUMM.Net.ServerApp/XUMM.Net.ServerApp.csproj

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
<Project Sdk="Microsoft.NET.Sdk.Web">
22

33
<PropertyGroup>
4-
<TargetFramework>net7.0</TargetFramework>
5-
<LangVersion>11.0</LangVersion>
4+
<TargetFramework>net8.0</TargetFramework>
5+
<LangVersion>12.0</LangVersion>
66
<Nullable>enable</Nullable>
77
<ImplicitUsings>enable</ImplicitUsings>
88
</PropertyGroup>

src/XUMM.NET.SDK.Tests/Clients/XummHttpClientTests.cs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -44,8 +44,8 @@ public void GetHttpClient_WithValidCredentials_ShouldReturnHttpClient(string api
4444
var httpClient = xummHttpClient.GetHttpClient(true);
4545

4646
// Assert
47-
Assert.AreEqual(apiKey, httpClient.DefaultRequestHeaders.GetValues("X-API-Key").First());
48-
Assert.AreEqual(apiSecret, httpClient.DefaultRequestHeaders.GetValues("X-API-Secret").First());
47+
Assert.That(apiKey, Is.EqualTo(httpClient.DefaultRequestHeaders.GetValues("X-API-Key").First()));
48+
Assert.That(apiSecret, Is.EqualTo(httpClient.DefaultRequestHeaders.GetValues("X-API-Secret").First()));
4949
}
5050

5151
[Test]
@@ -64,7 +64,7 @@ public void XummHttpClient_WithInvalidCredentials_ShouldThrowException(string ap
6464
new Mock<ILogger<XummHttpClient>>().Object));
6565

6666
// Assert
67-
Assert.IsNotNull(ex);
67+
Assert.That(ex, Is.Not.Null);
6868
Assert.That(ex!.Message, Is.EqualTo(message));
6969
}
7070
}

src/XUMM.NET.SDK.Tests/Clients/XummMiscAppStorageClientTests.cs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -90,7 +90,7 @@ public void GetAsync_WithInvalidCredentials_ShouldThrowException()
9090
var ex = Assert.ThrowsAsync<HttpRequestException>(async () => await _subject.GetAsync());
9191

9292
// Assert
93-
Assert.IsNotNull(ex);
93+
Assert.That(ex, Is.Not.Null);
9494
Assert.That(ex!.Message, Is.EqualTo("Error code 813, see XUMM Dev Console, reference: '26279bfe-c7e1-4b12-a680-26119d8f5062'."));
9595
}
9696

@@ -104,7 +104,7 @@ public void StoreAsync_WithInvalidCredentials_ShouldThrowException()
104104
var ex = Assert.ThrowsAsync<HttpRequestException>(async () => await _subject.StoreAsync(It.IsAny<string>()));
105105

106106
// Assert
107-
Assert.IsNotNull(ex);
107+
Assert.That(ex, Is.Not.Null);
108108
Assert.That(ex!.Message, Is.EqualTo("Error code 813, see XUMM Dev Console, reference: '26279bfe-c7e1-4b12-a680-26119d8f5062'."));
109109
}
110110

@@ -118,7 +118,7 @@ public void ClearAsync_WithInvalidCredentials_ShouldThrowException()
118118
var ex = Assert.ThrowsAsync<HttpRequestException>(async () => await _subject.ClearAsync());
119119

120120
// Asert
121-
Assert.IsNotNull(ex);
121+
Assert.That(ex, Is.Not.Null);
122122
Assert.That(ex!.Message, Is.EqualTo("Error code 813, see XUMM Dev Console, reference: '26279bfe-c7e1-4b12-a680-26119d8f5062'."));
123123
}
124124
}

src/XUMM.NET.SDK.Tests/Clients/XummMiscClientTests.cs

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -109,7 +109,7 @@ public void GetKycStatusAsync_WithUserTokenAndInvalidStatus_ShouldThrowException
109109
var ex = Assert.ThrowsAsync<ArgumentOutOfRangeException>(() => _subject.GetKycStatusAsync(userToken));
110110

111111
// Assert
112-
Assert.IsNotNull(ex);
112+
Assert.That(ex, Is.Not.Null);
113113
Assert.That(ex!.Message, Is.EqualTo($"Specified argument was out of the range of valid values. (Parameter 'name'){Environment.NewLine}Actual value was INVALID_STATUS."));
114114
}
115115

@@ -136,7 +136,7 @@ public void GetKycStatusAsync_WithInvalidUserTokenAndAccount_ShouldThrowExceptio
136136
var ex = Assert.ThrowsAsync<ArgumentException>(() => _subject.GetKycStatusAsync(userTokenOrAccount));
137137

138138
// Assert
139-
Assert.IsNotNull(ex);
139+
Assert.That(ex, Is.Not.Null);
140140
Assert.That(ex!.Message, Is.EqualTo("Invalid user token or account provided (Parameter 'userTokenOrAccount')"));
141141
}
142142

@@ -150,7 +150,7 @@ public void GetKycStatusAsync_WithNullOrWhiteSpaceUserTokenAndAccount_ShouldThro
150150
var ex = Assert.ThrowsAsync<ArgumentException>(() => _subject.GetKycStatusAsync(userTokenOrAccount));
151151

152152
// Assert
153-
Assert.IsNotNull(ex);
153+
Assert.That(ex, Is.Not.Null);
154154
Assert.That(ex!.Message, Is.EqualTo("Value cannot be null or white space (Parameter 'userTokenOrAccount')"));
155155
}
156156

@@ -178,7 +178,7 @@ public void GetRatesAsync_WithInvalidCurrencyCode_ShouldThrowExceptionAsync(stri
178178
var ex = Assert.ThrowsAsync<ArgumentException>(() => _subject.GetRatesAsync(currencyCode));
179179

180180
// Assert
181-
Assert.IsNotNull(ex);
181+
Assert.That(ex, Is.Not.Null);
182182
Assert.That(ex!.Message, Is.EqualTo("Value cannot be null or white space (Parameter 'currencyCode')"));
183183
}
184184

@@ -221,7 +221,7 @@ public void GetHookInfoAsync_WithInvalidTxHash_ShouldThrowExceptionAsync(string
221221
var ex = Assert.ThrowsAsync<ArgumentException>(() => _subject.GetHookInfoAsync(hookHash));
222222

223223
// Assert
224-
Assert.IsNotNull(ex);
224+
Assert.That(ex, Is.Not.Null);
225225
Assert.That(ex!.Message, Is.EqualTo("Invalid Hook Hash (expecting SHA-512Half) (Parameter 'hookHash')"));
226226
}
227227

@@ -277,7 +277,7 @@ public void GetTransactionAsync_WithInvalidTxHash_ShouldThrowExceptionAsync(stri
277277
var ex = Assert.ThrowsAsync<ArgumentException>(() => _subject.GetTransactionAsync(txHash));
278278

279279
// Assert
280-
Assert.IsNotNull(ex);
280+
Assert.That(ex, Is.Not.Null);
281281
Assert.That(ex!.Message, Is.EqualTo("Invalid Transaction Hash (expecting SHA-512Half) (Parameter 'txHash')"));
282282
}
283283

@@ -319,7 +319,7 @@ public void VerifyUserTokenAsync_WithInvalidUserToken_ShouldThrowExceptionAsync(
319319
var ex = Assert.ThrowsAsync<ArgumentException>(() => _subject.VerifyUserTokenAsync(userToken));
320320

321321
// Assert
322-
Assert.IsNotNull(ex);
322+
Assert.That(ex, Is.Not.Null);
323323
Assert.That(ex!.Message, Is.EqualTo("Value cannot be null or white space (Parameter 'userToken')"));
324324
}
325325

@@ -344,7 +344,7 @@ public void VerifyUserTokensAsync_WithoutUserTokens_ShouldThrowExceptionAsync()
344344
var ex = Assert.ThrowsAsync<ArgumentException>(() => _subject.VerifyUserTokensAsync(It.IsAny<string[]>()));
345345

346346
// Assert
347-
Assert.IsNotNull(ex);
347+
Assert.That(ex, Is.Not.Null);
348348
Assert.That(ex!.Message, Is.EqualTo("Value cannot be null or empty (Parameter 'userTokens')"));
349349
}
350350

@@ -384,7 +384,7 @@ public void GetAccountMetaAsync_WithInvalidAccount_ShouldThrowExceptionAsync(str
384384
var ex = Assert.ThrowsAsync<ArgumentException>(() => _subject.AccountMetaAsync(account));
385385

386386
// Assert
387-
Assert.IsNotNull(ex);
387+
Assert.That(ex, Is.Not.Null);
388388
Assert.That(ex!.Message, Is.EqualTo("Value should be a valid account address (Parameter 'account')"));
389389
}
390390

@@ -398,7 +398,7 @@ public void GetAvatarUrl_WithInvalidAccount_ShouldThrowExceptionAsync(string acc
398398
var ex = Assert.Throws<ArgumentException>(() => _subject.GetAvatarUrl(account, dimensions, padding));
399399

400400
// Assert
401-
Assert.IsNotNull(ex);
401+
Assert.That(ex, Is.Not.Null);
402402
Assert.That(ex!.Message, Is.EqualTo("Value cannot be null or white space (Parameter 'account')"));
403403
}
404404

@@ -412,7 +412,7 @@ public void GetAvatarUrl_WithInvalidDimensions_ShouldThrowException(string accou
412412
var ex = Assert.Throws<ArgumentOutOfRangeException>(() => _subject.GetAvatarUrl(account, dimensions, padding));
413413

414414
// Assert
415-
Assert.IsNotNull(ex);
415+
Assert.That(ex, Is.Not.Null);
416416
Assert.That(ex!.Message, Is.EqualTo("The minimum (square) dimensions are 200. (Parameter 'dimensions')"));
417417
}
418418

@@ -425,7 +425,7 @@ public void GetAvatarUrl_WithInvalidPadding_ShouldThrowException(string account,
425425
var ex = Assert.Throws<ArgumentOutOfRangeException>(() => _subject.GetAvatarUrl(account, dimensions, padding));
426426

427427
// Asert
428-
Assert.IsNotNull(ex);
428+
Assert.That(ex, Is.Not.Null);
429429
Assert.That(ex!.Message, Is.EqualTo("The padding should be equal or greater than zero. (Parameter 'padding')"));
430430
}
431431

src/XUMM.NET.SDK.Tests/Clients/XummPayloadClientTests.cs

Lines changed: 17 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -78,7 +78,7 @@ public async Task CreateAsync_WithInvalidXummPostJsonPayload_ShouldReturnNullAsy
7878
var result = await _subject.CreateAsync(It.IsAny<XummPostJsonPayload>());
7979

8080
// Assert
81-
Assert.IsNull(result);
81+
Assert.That(result, Is.Null);
8282
}
8383

8484
[Test]
@@ -91,7 +91,7 @@ public void CreateAsync_WithInvalidXummPostJsonPayload_ShouldThrowExceptionAsync
9191
var ex = Assert.ThrowsAsync<HttpRequestException>(async () => await _subject.CreateAsync(It.IsAny<XummPostJsonPayload>(), true));
9292

9393
// Assert
94-
Assert.IsNotNull(ex);
94+
Assert.That(ex, Is.Not.Null);
9595
Assert.That(ex!.Message, Is.EqualTo("Error code 602, see XUMM Dev Console, reference: 'a61ba59a-0304-44ae-a86e-d74808bd5190'."));
9696
}
9797

@@ -118,7 +118,7 @@ public async Task CreateAsync_WithInvalidXummPostBlobPayload_ShouldReturnNullAsy
118118
var result = await _subject.CreateAsync(It.IsAny<XummPostBlobPayload>());
119119

120120
// Assert
121-
Assert.IsNull(result);
121+
Assert.That(result, Is.Null);
122122
}
123123

124124
[Test]
@@ -131,7 +131,7 @@ public void CreateAsync_WithInvalidXummPostBlobPayload_ShouldThrowExceptionAsync
131131
var ex = Assert.ThrowsAsync<HttpRequestException>(async () => await _subject.CreateAsync(It.IsAny<XummPostBlobPayload>(), true));
132132

133133
// Assert
134-
Assert.IsNotNull(ex);
134+
Assert.That(ex, Is.Not.Null);
135135
Assert.That(ex!.Message, Is.EqualTo("Error code 602, see XUMM Dev Console, reference: 'a61ba59a-0304-44ae-a86e-d74808bd5190'."));
136136
}
137137

@@ -164,7 +164,7 @@ public async Task CreateAsync_WithInvalidXummPayloadTransaction_ShouldReturnNull
164164
var result = await _subject.CreateAsync(It.IsAny<XummPayloadTransaction>());
165165

166166
// Assert
167-
Assert.IsNull(result);
167+
Assert.That(result, Is.Null);
168168
}
169169

170170
[Test]
@@ -177,7 +177,7 @@ public void CreateAsync_WithInvalidXummPayloadTransaction_ShouldThrowExceptionAs
177177
var ex = Assert.ThrowsAsync<HttpRequestException>(async () => await _subject.CreateAsync(It.IsAny<XummPayloadTransaction>(), true));
178178

179179
// Assert
180-
Assert.IsNotNull(ex);
180+
Assert.That(ex, Is.Not.Null);
181181
Assert.That(ex!.Message, Is.EqualTo("Error code 602, see XUMM Dev Console, reference: 'a61ba59a-0304-44ae-a86e-d74808bd5190'."));
182182
}
183183

@@ -191,7 +191,7 @@ public void CreateAsync_WhenInternalServerErrorOccurs_ShouldThrowExceptionAsync(
191191
var ex = Assert.ThrowsAsync<HttpRequestException>(async () => await _subject.CreateAsync(It.IsAny<XummPayloadTransaction>(), true));
192192

193193
// Assert
194-
Assert.IsNotNull(ex);
194+
Assert.That(ex, Is.Not.Null);
195195
Assert.That(ex!.Message, Is.EqualTo("Some error has occured"));
196196
}
197197

@@ -252,7 +252,7 @@ public async Task GetAsync_WithInvalidPayloadUuid_ShouldReturnNullAsync()
252252
var result = await _subject.GetAsync(It.IsAny<string>());
253253

254254
// Assert
255-
Assert.IsNull(result);
255+
Assert.That(result, Is.Null);
256256
}
257257

258258
[Test]
@@ -265,7 +265,7 @@ public void GetAsync_WithInvalidPayloadUuid_ShouldThrowExceptionAsync()
265265
var ex = Assert.ThrowsAsync<HttpRequestException>(async () => await _subject.GetAsync(It.IsAny<string>(), true));
266266

267267
// Assert
268-
Assert.IsNotNull(ex);
268+
Assert.That(ex, Is.Not.Null);
269269
Assert.That(ex!.Message, Is.EqualTo("Error code 602, see XUMM Dev Console, reference: 'a61ba59a-0304-44ae-a86e-d74808bd5190'."));
270270
}
271271

@@ -307,7 +307,7 @@ public async Task GetByCustomIdentifierAsync_WithInvalidCustomIdentifier_ShouldR
307307
var result = await _subject.GetByCustomIdentifierAsync(It.IsAny<string>());
308308

309309
// Assert
310-
Assert.IsNull(result);
310+
Assert.That(result, Is.Null);
311311
}
312312

313313
[Test]
@@ -320,7 +320,7 @@ public void GetByCustomIdentifierAsync_WithInvalidCustomIdentifier_ShouldThrowEx
320320
var ex = Assert.ThrowsAsync<HttpRequestException>(async () => await _subject.GetByCustomIdentifierAsync(It.IsAny<string>(), true));
321321

322322
// Assert
323-
Assert.IsNotNull(ex);
323+
Assert.That(ex, Is.Not.Null);
324324
Assert.That(ex!.Message, Is.EqualTo("Error code 602, see XUMM Dev Console, reference: 'a61ba59a-0304-44ae-a86e-d74808bd5190'."));
325325
}
326326

@@ -444,7 +444,7 @@ public async Task CancelAsync_WithInvalidPayloadUuid_ShouldReturnNullAsync()
444444
var result = await _subject.CancelAsync(It.IsAny<string>());
445445

446446
// Assert
447-
Assert.IsNull(result);
447+
Assert.That(result, Is.Null);
448448
}
449449

450450
[Test]
@@ -457,7 +457,7 @@ public void CancelAsync_WithInvalidPayloadUuid_ShouldThrowExceptionAsync()
457457
var ex = Assert.ThrowsAsync<HttpRequestException>(async () => await _subject.CancelAsync(It.IsAny<string>(), true));
458458

459459
// Assert
460-
Assert.IsNotNull(ex);
460+
Assert.That(ex, Is.Not.Null);
461461
Assert.That(ex!.Message, Is.EqualTo("Error code 404, see XUMM Dev Console, reference: 'a61ba59a-0304-44ae-a86e-d74808bd5190'."));
462462
}
463463

@@ -518,7 +518,7 @@ await _subject.SubscribeAsync(payloadUuid, delegate (object? sender, XummSubscri
518518
}, It.IsAny<CancellationToken>());
519519

520520
// Assert
521-
Assert.AreEqual(4, eventArgs.Count);
521+
Assert.That(4, Is.EqualTo(eventArgs.Count));
522522
}
523523

524524
[Test]
@@ -536,7 +536,7 @@ await _subject.SubscribeAsync(It.IsAny<string>(), delegate (object? sender, Xumm
536536
}, It.IsAny<CancellationToken>());
537537

538538
// Assert
539-
Assert.IsEmpty(eventArgs);
539+
Assert.That(eventArgs, Is.Empty);
540540
}
541541

542542
[Test]
@@ -567,7 +567,7 @@ public void CreateAndSubscribeAsync_WithInvalidXummPostJsonPayload_ShouldThrowEx
567567
}, It.IsAny<CancellationToken>()));
568568

569569
// Assert
570-
Assert.IsNotNull(ex);
570+
Assert.That(ex, Is.Not.Null);
571571
Assert.That(ex!.Message, Is.EqualTo("Error code 602, see XUMM Dev Console, reference: 'a61ba59a-0304-44ae-a86e-d74808bd5190'."));
572572
}
573573

@@ -599,7 +599,7 @@ public void CreateAndSubscribeAsync_WithInvalidXummPostBlobPayload_ShouldThrowEx
599599
}, It.IsAny<CancellationToken>()));
600600

601601
// Assert
602-
Assert.IsNotNull(ex);
602+
Assert.That(ex, Is.Not.Null);
603603
Assert.That(ex!.Message, Is.EqualTo("Error code 602, see XUMM Dev Console, reference: 'a61ba59a-0304-44ae-a86e-d74808bd5190'."));
604604
}
605605

src/XUMM.NET.SDK.Tests/Clients/XummXAppClientTests.cs

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -84,7 +84,7 @@ public void GetOneTimeTokenDataAsync_WithInvalidOneTimeToken_ShouldThrowExceptio
8484
var ex = Assert.ThrowsAsync<ArgumentException>(() => _subject.GetOneTimeTokenDataAsync(oneTimeToken));
8585

8686
// Assert
87-
Assert.IsNotNull(ex);
87+
Assert.That(ex, Is.Not.Null);
8888
Assert.That(ex!.Message, Is.EqualTo("Value cannot be null or white space (Parameter 'oneTimeToken')"));
8989
}
9090

@@ -141,7 +141,7 @@ public void ReFetchOneTimeTokenDataAsync_WithInvalidOneTimeToken_ShouldThrowExce
141141
var ex = Assert.ThrowsAsync<ArgumentException>(() => _subject.ReFetchOneTimeTokenDataAsync(oneTimeToken, It.IsAny<string>()));
142142

143143
// Assert
144-
Assert.IsNotNull(ex);
144+
Assert.That(ex, Is.Not.Null);
145145
Assert.That(ex!.Message, Is.EqualTo("Value cannot be null or white space (Parameter 'oneTimeToken')"));
146146
}
147147

@@ -155,7 +155,7 @@ public void ReFetchOneTimeTokenDataAsync_WithInvalidDeviceId_ShouldThrowExceptio
155155
var ex = Assert.ThrowsAsync<ArgumentException>(() => _subject.ReFetchOneTimeTokenDataAsync("1b9105dd-b7e7-456b-8303-3b9c7e48a622", deviceId));
156156

157157
// Assert
158-
Assert.IsNotNull(ex);
158+
Assert.That(ex, Is.Not.Null);
159159
Assert.That(ex!.Message, Is.EqualTo("Value cannot be null or white space (Parameter 'deviceId')"));
160160
}
161161

@@ -195,7 +195,7 @@ public void EventAsync_WithInvalidUserToken_ShouldThrowExceptionAsync(string use
195195
var ex = Assert.ThrowsAsync<ArgumentException>(() => _subject.EventAsync(request));
196196

197197
// Assert
198-
Assert.IsNotNull(ex);
198+
Assert.That(ex, Is.Not.Null);
199199
Assert.That(ex!.Message, Is.EqualTo("Value cannot be null or white space (Parameter 'UserToken')"));
200200
}
201201

@@ -216,7 +216,7 @@ public void EventAsync_WithInvalidBody_ShouldThrowExceptionAsync(string body)
216216
var ex = Assert.ThrowsAsync<ArgumentException>(() => _subject.EventAsync(request));
217217

218218
// Assert
219-
Assert.IsNotNull(ex);
219+
Assert.That(ex, Is.Not.Null);
220220
Assert.That(ex!.Message, Is.EqualTo("Value cannot be null or white space (Parameter 'Body')"));
221221
}
222222

@@ -256,7 +256,7 @@ public void PushAsync_WithInvalidUserToken_ShouldThrowExceptionAsync(string user
256256
var ex = Assert.ThrowsAsync<ArgumentException>(() => _subject.PushAsync(request));
257257

258258
// Assert
259-
Assert.IsNotNull(ex);
259+
Assert.That(ex, Is.Not.Null);
260260
Assert.That(ex!.Message, Is.EqualTo("Value cannot be null or white space (Parameter 'UserToken')"));
261261
}
262262

@@ -277,7 +277,7 @@ public void PushAsync_WithInvalidBody_ShouldThrowExceptionAsync(string body)
277277
var ex = Assert.ThrowsAsync<ArgumentException>(() => _subject.PushAsync(request));
278278

279279
// Assert
280-
Assert.IsNotNull(ex);
280+
Assert.That(ex, Is.Not.Null);
281281
Assert.That(ex!.Message, Is.EqualTo("Value cannot be null or white space (Parameter 'Body')"));
282282
}
283283
}

0 commit comments

Comments
 (0)