public void ProvidingApiCredentials_Should_SaveApiCredentials() { // arrange // act var authProvider = new BittrexAuthenticationProvider(new ApiCredentials("TestKey", "TestSecret")); // assert Assert.AreEqual(authProvider.Credentials.Key.GetString(), "TestKey"); Assert.AreEqual(authProvider.Credentials.Secret.GetString(), "TestSecret"); }
public void SigningString_Should_GiveCorrectSignResult() { // arrange var authProvider = new BittrexAuthenticationProvider(new ApiCredentials("TestKey", "TestSecret")); // act var sign = authProvider.Sign("TestStringToSign"); // assert Assert.AreEqual(sign, "27D837EE7643CFA909E03F01F7794DC8D75127CDF02C826C3E57E9A11358972AD52001027A04133E8B15AD52EE73DDCE166229605D8709CFA769E2C7EE5CD988"); }
public void AddingAuthenticationToUriString_Should_GiveCorrectUriResult() { // arrange var authProvider = new BittrexAuthenticationProvider(new ApiCredentials("TestKey", "TestSecret")); // act var sign = authProvider.AddAuthenticationToUriString("https://test.test-api.com", true); // assert Assert.IsTrue(sign.StartsWith("https://test.test-api.com?apiKey=TestKey&nonce=")); }
public void AddingAuthenticationToRequest_Should_GiveCorrectRequestResult() { // arrange var authProvider = new BittrexAuthenticationProvider(new ApiCredentials("TestKey", "TestSecret")); var uri = new Uri("https://test.test-api.com"); // act var sign = authProvider.AddAuthenticationToHeaders(uri.ToString(), HttpMethod.Get, new Dictionary <string, object>(), true); // assert Assert.IsTrue(sign.First().Value == "3A82874271C0B4BE0F5DE44CB2CE7B39645AC93B07FD5570A700DC14C7524269B373DAFFA3A9BF1A2B6A318915D2ACEEC905163E574F34FF39EC62A676D2FBC2"); }
public void AddingAuthenticationToUriString_Should_GiveCorrectUriResult() { // arrange var authProvider = new BittrexAuthenticationProvider(new ApiCredentials("TestKey", "TestSecret")); // act var sign = authProvider.AddAuthenticationToParameters("https://test.test-api.com", HttpMethod.Get, new Dictionary <string, object>(), true); // assert Assert.IsTrue(sign.First().Key == "apiKey"); Assert.IsTrue((string)sign.First().Value == "TestKey"); Assert.IsTrue(sign.ElementAt(1).Key == "nonce"); }
public void AddingAuthenticationToRequest_Should_GiveCorrectRequestResult() { // arrange var authProvider = new BittrexAuthenticationProvider(new ApiCredentials("TestKey", "TestSecret")); var uri = new Uri("https://test.test-api.com"); var request = new Request(WebRequest.CreateHttp(uri)); // act var sign = authProvider.AddAuthenticationToRequest(request, true); // assert Assert.IsTrue(request.Headers["apisign"] == "3A82874271C0B4BE0F5DE44CB2CE7B39645AC93B07FD5570A700DC14C7524269B373DAFFA3A9BF1A2B6A318915D2ACEEC905163E574F34FF39EC62A676D2FBC2"); }
public void WhenSubscribingAuthenticatedStream_Should_InvokeAuthentication() { // arrange var client = PrepareClient(true); var authProvider = new BittrexAuthenticationProvider(new ApiCredentials("TestKey", "TestSecret")); proxy.Setup(p => p.Invoke <string>("GetAuthContext", "TestKey")).Returns(Task.FromResult("TestAuthContext")); proxy.Setup(p => p.Invoke <bool>("Authenticate", "TestKey", authProvider.Sign("TestAuthContext"))).Returns(Task.FromResult(true)); // act var subscription = client.SubscribeToOrderUpdatesAsync((test) => { }); // assert proxy.Verify(p => p.Invoke <string>("GetAuthContext", "TestKey"), Times.Once); proxy.Verify(p => p.Invoke <bool>("Authenticate", "TestKey", authProvider.Sign("TestAuthContext")), Times.Once); }