public static async Task MAuthAuthenticatingHandler_WithValidMWSV2Request_WillAuthenticate(string method) { // Arrange var testData = await method.FromResourceV2(); var actual = new AssertSigningHandler(); var version = MAuthVersion.MWSV2; var handler = new MAuthAuthenticatingHandler(new MAuthWebApiOptions() { ApplicationUuid = TestExtensions.ServerUuid, MAuthServiceUrl = TestExtensions.TestUri, PrivateKey = TestExtensions.ServerPrivateKey, MAuthServerHandler = new MAuthServerHandler() }, actual); using (var server = new HttpClient(handler)) { // Act var response = await server.SendAsync(testData.ToHttpRequestMessage(version)); // Assert Assert.Equal(HttpStatusCode.OK, response.StatusCode); Assert.Equal(testData.MAuthHeaderV2, actual.MAuthHeaderV2); Assert.Equal(testData.SignedTime, long.Parse(actual.MAuthTimeHeaderV2).FromUnixTimeSeconds()); } }
public async Task MAuthAuthenticatingHandler_WithValidRequest_WillAuthenticate(string method) { // Arrange var testData = await TestData.For(method); var actual = new AssertSigningHandler(); var handler = new MAuthAuthenticatingHandler(new MAuthWebApiOptions() { ApplicationUuid = TestExtensions.ServerUuid, MAuthServiceUrl = TestExtensions.TestUri, PrivateKey = TestExtensions.ServerPrivateKey, MAuthServerHandler = new MAuthServerHandler() }, actual); using (var server = new HttpClient(handler)) { // Act var response = await server.SendAsync( await testData.Request.Sign(TestExtensions.ClientOptions(testData.SignedTime))); // Assert Assert.Equal(HttpStatusCode.OK, response.StatusCode); Assert.Equal(testData.MAuthHeader, actual.MAuthHeader); Assert.Equal(testData.SignedTime, actual.MAuthTimeHeader.FromUnixTimeSeconds()); } }
public async Task SendAsync_WithValidRequest_WillSignProperly(string method) { // Arrange var testData = await TestData.For(method); var actual = new AssertSigningHandler(); var signingHandler = new MAuthSigningHandler(TestExtensions.ClientOptions(testData.SignedTime), actual); // Act using (var client = new HttpClient(signingHandler)) { await client.SendAsync(testData.Request); } // Assert Assert.Equal(testData.MAuthHeader, actual.MAuthHeader); Assert.Equal(testData.SignedTime, actual.MAuthTimeHeader.FromUnixTimeSeconds()); }
public static async Task SendAsync_WithDefault_WillSignProperly_BothMWSAndMWSV2(string method) { // Arrange var testData = await method.FromResource(); var actual = new AssertSigningHandler(); var signingHandler = new MAuthSigningHandler(TestExtensions.ClientOptions(testData.SignedTime), actual); // Act using (var client = new HttpClient(signingHandler)) { await client.SendAsync(testData.ToDefaultHttpRequestMessage()); } // Assert Assert.Equal(testData.MAuthHeader, actual.MAuthHeader); Assert.Equal(testData.SignedTime, long.Parse(actual.MAuthTimeHeader).FromUnixTimeSeconds()); Assert.Equal(testData.MAuthHeaderV2, actual.MAuthHeaderV2); Assert.Equal(testData.SignedTime, long.Parse(actual.MAuthTimeHeader).FromUnixTimeSeconds()); }
public static async Task SendAsync_WithDisableV1_WillSignProperlyWithMWSV2(string method) { // Arrange var testData = await method.FromResourceV2(); var actual = new AssertSigningHandler(); var version = MAuthVersion.MWSV2; var clientOptions = TestExtensions.ClientOptions(testData.SignedTime); clientOptions.DisableV1 = true; var signingHandler = new MAuthSigningHandler(clientOptions, actual); // Act using (var client = new HttpClient(signingHandler)) { await client.SendAsync(testData.ToHttpRequestMessage(version)); } // Assert Assert.Equal(testData.MAuthHeaderV2, actual.MAuthHeaderV2); Assert.Equal(testData.SignedTime, long.Parse(actual.MAuthTimeHeaderV2).FromUnixTimeSeconds()); }