|
1 | 1 | using System; |
2 | 2 | using System.Diagnostics; |
| 3 | +using System.Globalization; |
3 | 4 | using System.Text; |
| 5 | +using System.Threading; |
4 | 6 | using Amazon.Runtime; |
5 | 7 | using Elasticsearch.Net.Aws; |
6 | 8 | using NUnit.Framework; |
@@ -101,6 +103,31 @@ public void SignRequest_should_apply_signature_to_request() |
101 | 103 | Trace.WriteLine("Token: " + token); |
102 | 104 | } |
103 | 105 |
|
| 106 | + [Test] |
| 107 | + public void SignRequest_should_apply_signature_to_request_right_culture() |
| 108 | + { |
| 109 | + Thread.CurrentThread.CurrentCulture = new CultureInfo("th"); |
| 110 | + |
| 111 | + var creds = new SessionAWSCredentials("ExampleKey", "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY", "token1") |
| 112 | + .GetCredentials(); |
| 113 | + SignV4Util.SignRequest(_sampleRequest, _sampleBody, creds, "us-east-1", "iam"); |
| 114 | + |
| 115 | + var amzDateValue = _sampleRequest.Headers.XAmzDate; |
| 116 | + Assert.False(String.IsNullOrEmpty(amzDateValue)); |
| 117 | + var amzDates = amzDateValue.Split(','); |
| 118 | + Assert.AreEqual(2, amzDates.Length); |
| 119 | + Assert.True(amzDates[1].StartsWith(DateTime.UtcNow.Year.ToString())); |
| 120 | + Trace.WriteLine("X-Amz-Date: " + amzDateValue); |
| 121 | + |
| 122 | + var auth = _sampleRequest.Headers.Authorization; |
| 123 | + Assert.False(String.IsNullOrEmpty(auth)); |
| 124 | + Trace.WriteLine("Authorize: " + auth); |
| 125 | + |
| 126 | + var token = _sampleRequest.Headers.XAmzSecurityToken; |
| 127 | + Assert.False(String.IsNullOrEmpty(token)); |
| 128 | + Trace.WriteLine("Token: " + token); |
| 129 | + } |
| 130 | + |
104 | 131 | [Test] |
105 | 132 | public void GetCanonicalQueryString_should_match_sample() |
106 | 133 | { |
|
0 commit comments