1
0
mirror of https://github.com/JKorf/CryptoExchange.Net.git synced 2026-08-18 20:02:57 +00:00

Feature/system.text.json (#192)

Initial support for System.Text.Json and some refactoring
This commit is contained in:
Jan Korf
2024-03-16 14:45:36 +01:00
committed by GitHub
parent 462c857bba
commit 2fb3442800
66 changed files with 2318 additions and 1095 deletions
@@ -14,6 +14,7 @@ using CryptoExchange.Net.Authentication;
using System.Collections.Generic;
using CryptoExchange.Net.Objects.Options;
using Microsoft.Extensions.Logging;
using CryptoExchange.Net.Clients;
namespace CryptoExchange.Net.UnitTests.TestImplementations
{
@@ -182,11 +183,11 @@ namespace CryptoExchange.Net.UnitTests.TestImplementations
return await SendRequestAsync<T>(new Uri("http://www.test.com"), HttpMethod.Get, ct);
}
protected override Error ParseErrorResponse(int httpStatusCode, IEnumerable<KeyValuePair<string, IEnumerable<string>>> responseHeaders, string data)
protected override Error ParseErrorResponse(int httpStatusCode, IEnumerable<KeyValuePair<string, IEnumerable<string>>> responseHeaders, IMessageAccessor accessor)
{
var errorData = ValidateJson(data);
var errorData = accessor.Deserialize<TestError>();
return new ServerError((int)errorData.Data["errorCode"], (string)errorData.Data["errorMessage"]);
return new ServerError(errorData.Data.ErrorCode, errorData.Data.ErrorMessage);
}
public override TimeSpan? GetTimeOffset()
@@ -208,6 +209,12 @@ namespace CryptoExchange.Net.UnitTests.TestImplementations
}
}
public class TestError
{
public int ErrorCode { get; set; }
public string ErrorMessage { get; set; }
}
public class ParseErrorTestRestClient: TestRestClient
{
public ParseErrorTestRestClient() { }