public void GetSignedHeaders_should_return_expected_result() { var timestamp = new DateTime(2020, 03, 12, 14, 23, 46).ToString("yyyyMMddTHHmmssZ"); var requestHeaders = new SortedDictionary <string, string> { ["X-Amz-Security-Token"] = "321", ["Content-Type"] = "application/x-www-form-urlencoded", ["X-Amz-Date"] = timestamp, ["Content-Length"] = "42", ["Host"] = "iam.testhost.com", ["X-MongoDB-GS2-CB-Flag"] = "n", ["X-MongoDB-Server-Nonce"] = "123" }; var expected = "content-length;content-type;host;x-amz-date;x-amz-security-token;x-mongodb-gs2-cb-flag;x-mongodb-server-nonce"; var actual = AwsSignatureVersion4Reflector.GetSignedHeaders(requestHeaders); actual.Should().Be(expected); }