mirror of
https://github.com/JKorf/CryptoExchange.Net
synced 2025-06-12 02:16:23 +00:00
Fixed tests
This commit is contained in:
parent
f83127590a
commit
6c3462403f
@ -22,7 +22,7 @@ namespace CryptoExchange.Net.UnitTests
|
|||||||
// arrange
|
// arrange
|
||||||
// act
|
// act
|
||||||
// assert
|
// assert
|
||||||
Assert.Throws(typeof(ArgumentException), () => new TestBaseClient(new RestClientOptions("") { ApiCredentials = new ApiCredentials(key, secret) }));
|
Assert.Throws(typeof(ArgumentException), () => new TestBaseClient(new RestClientOptions() { ApiCredentials = new ApiCredentials(key, secret) }));
|
||||||
}
|
}
|
||||||
|
|
||||||
[TestCase]
|
[TestCase]
|
||||||
@ -30,7 +30,7 @@ namespace CryptoExchange.Net.UnitTests
|
|||||||
{
|
{
|
||||||
// arrange
|
// arrange
|
||||||
var logger = new TestStringLogger();
|
var logger = new TestStringLogger();
|
||||||
var client = new TestBaseClient(new RestClientOptions("")
|
var client = new TestBaseClient(new RestClientOptions()
|
||||||
{
|
{
|
||||||
LogWriters = new List<ILogger> { logger }
|
LogWriters = new List<ILogger> { logger }
|
||||||
});
|
});
|
||||||
@ -65,16 +65,18 @@ namespace CryptoExchange.Net.UnitTests
|
|||||||
[TestCase(null, LogLevel.Error, true)]
|
[TestCase(null, LogLevel.Error, true)]
|
||||||
[TestCase(null, LogLevel.Warning, true)]
|
[TestCase(null, LogLevel.Warning, true)]
|
||||||
[TestCase(null, LogLevel.Information, true)]
|
[TestCase(null, LogLevel.Information, true)]
|
||||||
[TestCase(null, LogLevel.Debug, true)]
|
[TestCase(null, LogLevel.Debug, false)]
|
||||||
public void SettingLogLevel_Should_RestrictLogging(LogLevel? verbosity, LogLevel testVerbosity, bool expected)
|
public void SettingLogLevel_Should_RestrictLogging(LogLevel? verbosity, LogLevel testVerbosity, bool expected)
|
||||||
{
|
{
|
||||||
// arrange
|
// arrange
|
||||||
var logger = new TestStringLogger();
|
var logger = new TestStringLogger();
|
||||||
var client = new TestBaseClient(new RestClientOptions("")
|
var options = new RestClientOptions()
|
||||||
{
|
{
|
||||||
LogWriters = new List<ILogger> { logger },
|
LogWriters = new List<ILogger> { logger }
|
||||||
LogLevel = verbosity
|
};
|
||||||
});
|
if (verbosity != null)
|
||||||
|
options.LogLevel = verbosity.Value;
|
||||||
|
var client = new TestBaseClient(options);
|
||||||
|
|
||||||
// act
|
// act
|
||||||
client.Log(testVerbosity, "Test");
|
client.Log(testVerbosity, "Test");
|
||||||
|
@ -105,7 +105,7 @@ namespace CryptoExchange.Net.UnitTests
|
|||||||
{
|
{
|
||||||
// arrange
|
// arrange
|
||||||
// act
|
// act
|
||||||
var client = new TestRestClient(new RestClientOptions("")
|
var client = new TestRestClient(new RestClientOptions()
|
||||||
{
|
{
|
||||||
BaseAddress = "http://test.address.com",
|
BaseAddress = "http://test.address.com",
|
||||||
RateLimiters = new List<IRateLimiter>{new RateLimiterTotal(1, TimeSpan.FromSeconds(1))},
|
RateLimiters = new List<IRateLimiter>{new RateLimiterTotal(1, TimeSpan.FromSeconds(1))},
|
||||||
@ -115,10 +115,10 @@ namespace CryptoExchange.Net.UnitTests
|
|||||||
|
|
||||||
|
|
||||||
// assert
|
// assert
|
||||||
Assert.IsTrue(client.BaseAddress == "http://test.address.com/");
|
Assert.IsTrue(client.ClientOptions.BaseAddress == "http://test.address.com/");
|
||||||
Assert.IsTrue(client.RateLimiters.Count() == 1);
|
Assert.IsTrue(client.ClientOptions.RateLimiters.Count() == 1);
|
||||||
Assert.IsTrue(client.RateLimitBehaviour == RateLimitingBehaviour.Fail);
|
Assert.IsTrue(client.ClientOptions.RateLimitingBehaviour == RateLimitingBehaviour.Fail);
|
||||||
Assert.IsTrue(client.RequestTimeout == TimeSpan.FromMinutes(1));
|
Assert.IsTrue(client.ClientOptions.RequestTimeout == TimeSpan.FromMinutes(1));
|
||||||
}
|
}
|
||||||
|
|
||||||
[TestCase("GET", HttpMethodParameterPosition.InUri)] // No need to test InBody for GET since thats not valid
|
[TestCase("GET", HttpMethodParameterPosition.InUri)] // No need to test InBody for GET since thats not valid
|
||||||
@ -132,7 +132,7 @@ namespace CryptoExchange.Net.UnitTests
|
|||||||
{
|
{
|
||||||
// arrange
|
// arrange
|
||||||
// act
|
// act
|
||||||
var client = new TestRestClient(new RestClientOptions("")
|
var client = new TestRestClient(new RestClientOptions()
|
||||||
{
|
{
|
||||||
BaseAddress = "http://test.address.com",
|
BaseAddress = "http://test.address.com",
|
||||||
});
|
});
|
||||||
@ -165,7 +165,7 @@ namespace CryptoExchange.Net.UnitTests
|
|||||||
public void SettingRateLimitingBehaviourToFail_Should_FailLimitedRequests()
|
public void SettingRateLimitingBehaviourToFail_Should_FailLimitedRequests()
|
||||||
{
|
{
|
||||||
// arrange
|
// arrange
|
||||||
var client = new TestRestClient(new RestClientOptions("")
|
var client = new TestRestClient(new RestClientOptions()
|
||||||
{
|
{
|
||||||
RateLimiters = new List<IRateLimiter> { new RateLimiterTotal(1, TimeSpan.FromSeconds(1)) },
|
RateLimiters = new List<IRateLimiter> { new RateLimiterTotal(1, TimeSpan.FromSeconds(1)) },
|
||||||
RateLimitingBehaviour = RateLimitingBehaviour.Fail
|
RateLimitingBehaviour = RateLimitingBehaviour.Fail
|
||||||
@ -188,7 +188,7 @@ namespace CryptoExchange.Net.UnitTests
|
|||||||
public void SettingRateLimitingBehaviourToWait_Should_DelayLimitedRequests()
|
public void SettingRateLimitingBehaviourToWait_Should_DelayLimitedRequests()
|
||||||
{
|
{
|
||||||
// arrange
|
// arrange
|
||||||
var client = new TestRestClient(new RestClientOptions("")
|
var client = new TestRestClient(new RestClientOptions()
|
||||||
{
|
{
|
||||||
RateLimiters = new List<IRateLimiter> { new RateLimiterTotal(1, TimeSpan.FromSeconds(1)) },
|
RateLimiters = new List<IRateLimiter> { new RateLimiterTotal(1, TimeSpan.FromSeconds(1)) },
|
||||||
RateLimitingBehaviour = RateLimitingBehaviour.Wait
|
RateLimitingBehaviour = RateLimitingBehaviour.Wait
|
||||||
@ -213,7 +213,7 @@ namespace CryptoExchange.Net.UnitTests
|
|||||||
public void SettingApiKeyRateLimiter_Should_DelayRequestsFromSameKey()
|
public void SettingApiKeyRateLimiter_Should_DelayRequestsFromSameKey()
|
||||||
{
|
{
|
||||||
// arrange
|
// arrange
|
||||||
var client = new TestRestClient(new RestClientOptions("")
|
var client = new TestRestClient(new RestClientOptions()
|
||||||
{
|
{
|
||||||
RateLimiters = new List<IRateLimiter> { new RateLimiterAPIKey(1, TimeSpan.FromSeconds(1)) },
|
RateLimiters = new List<IRateLimiter> { new RateLimiterAPIKey(1, TimeSpan.FromSeconds(1)) },
|
||||||
RateLimitingBehaviour = RateLimitingBehaviour.Wait,
|
RateLimitingBehaviour = RateLimitingBehaviour.Wait,
|
||||||
|
@ -17,7 +17,7 @@ namespace CryptoExchange.Net.UnitTests
|
|||||||
{
|
{
|
||||||
//arrange
|
//arrange
|
||||||
//act
|
//act
|
||||||
var client = new TestSocketClient(new SocketClientOptions("")
|
var client = new TestSocketClient(new SocketClientOptions()
|
||||||
{
|
{
|
||||||
BaseAddress = "http://test.address.com",
|
BaseAddress = "http://test.address.com",
|
||||||
ReconnectInterval = TimeSpan.FromSeconds(6)
|
ReconnectInterval = TimeSpan.FromSeconds(6)
|
||||||
@ -25,7 +25,7 @@ namespace CryptoExchange.Net.UnitTests
|
|||||||
|
|
||||||
|
|
||||||
//assert
|
//assert
|
||||||
Assert.IsTrue(client.BaseAddress == "http://test.address.com/");
|
Assert.IsTrue(client.ClientOptions.BaseAddress == "http://test.address.com/");
|
||||||
Assert.IsTrue(client.ClientOptions.ReconnectInterval.TotalSeconds == 6);
|
Assert.IsTrue(client.ClientOptions.ReconnectInterval.TotalSeconds == 6);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -49,7 +49,7 @@ namespace CryptoExchange.Net.UnitTests
|
|||||||
public void SocketMessages_Should_BeProcessedInDataHandlers()
|
public void SocketMessages_Should_BeProcessedInDataHandlers()
|
||||||
{
|
{
|
||||||
// arrange
|
// arrange
|
||||||
var client = new TestSocketClient(new SocketClientOptions("") { ReconnectInterval = TimeSpan.Zero, LogLevel = LogLevel.Debug });
|
var client = new TestSocketClient(new SocketClientOptions() { ReconnectInterval = TimeSpan.Zero, LogLevel = LogLevel.Debug });
|
||||||
var socket = client.CreateSocket();
|
var socket = client.CreateSocket();
|
||||||
socket.ShouldReconnect = true;
|
socket.ShouldReconnect = true;
|
||||||
socket.CanConnect = true;
|
socket.CanConnect = true;
|
||||||
@ -77,7 +77,7 @@ namespace CryptoExchange.Net.UnitTests
|
|||||||
public void SocketMessages_Should_ContainOriginalDataIfEnabled(bool enabled)
|
public void SocketMessages_Should_ContainOriginalDataIfEnabled(bool enabled)
|
||||||
{
|
{
|
||||||
// arrange
|
// arrange
|
||||||
var client = new TestSocketClient(new SocketClientOptions("") { ReconnectInterval = TimeSpan.Zero, LogLevel = LogLevel.Debug, OutputOriginalData = enabled });
|
var client = new TestSocketClient(new SocketClientOptions() { ReconnectInterval = TimeSpan.Zero, LogLevel = LogLevel.Debug, OutputOriginalData = enabled });
|
||||||
var socket = client.CreateSocket();
|
var socket = client.CreateSocket();
|
||||||
socket.ShouldReconnect = true;
|
socket.ShouldReconnect = true;
|
||||||
socket.CanConnect = true;
|
socket.CanConnect = true;
|
||||||
@ -105,7 +105,7 @@ namespace CryptoExchange.Net.UnitTests
|
|||||||
{
|
{
|
||||||
// arrange
|
// arrange
|
||||||
bool reconnected = false;
|
bool reconnected = false;
|
||||||
var client = new TestSocketClient(new SocketClientOptions("") { ReconnectInterval = TimeSpan.Zero, LogLevel = LogLevel.Debug });
|
var client = new TestSocketClient(new SocketClientOptions() { ReconnectInterval = TimeSpan.Zero, LogLevel = LogLevel.Debug });
|
||||||
var socket = client.CreateSocket();
|
var socket = client.CreateSocket();
|
||||||
socket.ShouldReconnect = true;
|
socket.ShouldReconnect = true;
|
||||||
socket.CanConnect = true;
|
socket.CanConnect = true;
|
||||||
@ -132,7 +132,7 @@ namespace CryptoExchange.Net.UnitTests
|
|||||||
public void UnsubscribingStream_Should_CloseTheSocket()
|
public void UnsubscribingStream_Should_CloseTheSocket()
|
||||||
{
|
{
|
||||||
// arrange
|
// arrange
|
||||||
var client = new TestSocketClient(new SocketClientOptions("") { ReconnectInterval = TimeSpan.Zero, LogLevel = LogLevel.Debug });
|
var client = new TestSocketClient(new SocketClientOptions() { ReconnectInterval = TimeSpan.Zero, LogLevel = LogLevel.Debug });
|
||||||
var socket = client.CreateSocket();
|
var socket = client.CreateSocket();
|
||||||
socket.CanConnect = true;
|
socket.CanConnect = true;
|
||||||
var sub = new SocketConnection(client, socket);
|
var sub = new SocketConnection(client, socket);
|
||||||
@ -150,7 +150,7 @@ namespace CryptoExchange.Net.UnitTests
|
|||||||
public void UnsubscribingAll_Should_CloseAllSockets()
|
public void UnsubscribingAll_Should_CloseAllSockets()
|
||||||
{
|
{
|
||||||
// arrange
|
// arrange
|
||||||
var client = new TestSocketClient(new SocketClientOptions("") { ReconnectInterval = TimeSpan.Zero, LogLevel = LogLevel.Debug });
|
var client = new TestSocketClient(new SocketClientOptions() { ReconnectInterval = TimeSpan.Zero, LogLevel = LogLevel.Debug });
|
||||||
var socket1 = client.CreateSocket();
|
var socket1 = client.CreateSocket();
|
||||||
var socket2 = client.CreateSocket();
|
var socket2 = client.CreateSocket();
|
||||||
socket1.CanConnect = true;
|
socket1.CanConnect = true;
|
||||||
@ -172,7 +172,7 @@ namespace CryptoExchange.Net.UnitTests
|
|||||||
public void FailingToConnectSocket_Should_ReturnError()
|
public void FailingToConnectSocket_Should_ReturnError()
|
||||||
{
|
{
|
||||||
// arrange
|
// arrange
|
||||||
var client = new TestSocketClient(new SocketClientOptions("") { ReconnectInterval = TimeSpan.Zero, LogLevel = LogLevel.Debug });
|
var client = new TestSocketClient(new SocketClientOptions() { ReconnectInterval = TimeSpan.Zero, LogLevel = LogLevel.Debug });
|
||||||
var socket = client.CreateSocket();
|
var socket = client.CreateSocket();
|
||||||
socket.CanConnect = false;
|
socket.CanConnect = false;
|
||||||
var sub = new SocketConnection(client, socket);
|
var sub = new SocketConnection(client, socket);
|
||||||
|
@ -12,11 +12,11 @@ namespace CryptoExchange.Net.UnitTests
|
|||||||
[TestFixture]
|
[TestFixture]
|
||||||
public class SymbolOrderBookTests
|
public class SymbolOrderBookTests
|
||||||
{
|
{
|
||||||
private static OrderBookOptions defaultOrderBookOptions = new OrderBookOptions("Test", true, false);
|
private static OrderBookOptions defaultOrderBookOptions = new OrderBookOptions();
|
||||||
|
|
||||||
private class TestableSymbolOrderBook : SymbolOrderBook
|
private class TestableSymbolOrderBook : SymbolOrderBook
|
||||||
{
|
{
|
||||||
public TestableSymbolOrderBook() : base("BTC/USD", defaultOrderBookOptions)
|
public TestableSymbolOrderBook() : base("Test", "BTC/USD", defaultOrderBookOptions)
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -8,7 +8,7 @@ namespace CryptoExchange.Net.UnitTests
|
|||||||
{
|
{
|
||||||
public class TestBaseClient: BaseClient
|
public class TestBaseClient: BaseClient
|
||||||
{
|
{
|
||||||
public TestBaseClient(): base("Test", new RestClientOptions("http://testurl.url"), null)
|
public TestBaseClient(): base("Test", new RestClientOptions(), null)
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -23,7 +23,7 @@ namespace CryptoExchange.Net.UnitTests
|
|||||||
|
|
||||||
public CallResult<T> Deserialize<T>(string data)
|
public CallResult<T> Deserialize<T>(string data)
|
||||||
{
|
{
|
||||||
return Deserialize<T>(data, false);
|
return Deserialize<T>(data, null, null);
|
||||||
}
|
}
|
||||||
|
|
||||||
public string FillParameters(string path, params string[] values)
|
public string FillParameters(string path, params string[] values)
|
||||||
|
@ -17,7 +17,7 @@ namespace CryptoExchange.Net.UnitTests.TestImplementations
|
|||||||
{
|
{
|
||||||
public class TestRestClient: RestClient
|
public class TestRestClient: RestClient
|
||||||
{
|
{
|
||||||
public TestRestClient() : base("Test", new RestClientOptions("http://testurl.url"), null)
|
public TestRestClient() : base("Test", new RestClientOptions(), null)
|
||||||
{
|
{
|
||||||
RequestFactory = new Mock<IRequestFactory>().Object;
|
RequestFactory = new Mock<IRequestFactory>().Object;
|
||||||
}
|
}
|
||||||
|
@ -11,7 +11,7 @@ namespace CryptoExchange.Net.UnitTests.TestImplementations
|
|||||||
{
|
{
|
||||||
public class TestSocketClient: SocketClient
|
public class TestSocketClient: SocketClient
|
||||||
{
|
{
|
||||||
public TestSocketClient() : this(new SocketClientOptions("http://testurl.url"))
|
public TestSocketClient() : this(new SocketClientOptions())
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -24,7 +24,7 @@ namespace CryptoExchange.Net.UnitTests.TestImplementations
|
|||||||
public TestSocket CreateSocket()
|
public TestSocket CreateSocket()
|
||||||
{
|
{
|
||||||
Mock.Get(SocketFactory).Setup(f => f.CreateWebsocket(It.IsAny<Log>(), It.IsAny<string>())).Returns(new TestSocket());
|
Mock.Get(SocketFactory).Setup(f => f.CreateWebsocket(It.IsAny<Log>(), It.IsAny<string>())).Returns(new TestSocket());
|
||||||
return (TestSocket)CreateSocket(BaseAddress);
|
return (TestSocket)CreateSocket(ClientOptions.BaseAddress);
|
||||||
}
|
}
|
||||||
|
|
||||||
public CallResult<bool> ConnectSocketSub(SocketConnection sub)
|
public CallResult<bool> ConnectSocketSub(SocketConnection sub)
|
||||||
|
@ -67,7 +67,7 @@ namespace CryptoExchange.Net.Authentication
|
|||||||
/// Copy the credentials
|
/// Copy the credentials
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <returns></returns>
|
/// <returns></returns>
|
||||||
public ApiCredentials Copy()
|
public virtual ApiCredentials Copy()
|
||||||
{
|
{
|
||||||
if (PrivateKey == null)
|
if (PrivateKey == null)
|
||||||
return new ApiCredentials(Key!.GetString(), Secret!.GetString());
|
return new ApiCredentials(Key!.GetString(), Secret!.GetString());
|
||||||
|
@ -43,7 +43,11 @@ namespace CryptoExchange.Net.Converters
|
|||||||
if (reader.Value == null)
|
if (reader.Value == null)
|
||||||
return null;
|
return null;
|
||||||
|
|
||||||
if (!GetValue(reader.Value.ToString(), out var result))
|
var stringValue = reader.Value.ToString();
|
||||||
|
if (string.IsNullOrWhiteSpace(stringValue))
|
||||||
|
return null;
|
||||||
|
|
||||||
|
if (!GetValue(stringValue, out var result))
|
||||||
{
|
{
|
||||||
Debug.WriteLine($"Cannot map enum. Type: {typeof(T)}, Value: {reader.Value}");
|
Debug.WriteLine($"Cannot map enum. Type: {typeof(T)}, Value: {reader.Value}");
|
||||||
return null;
|
return null;
|
||||||
|
File diff suppressed because it is too large
Load Diff
Loading…
x
Reference in New Issue
Block a user