예제 #1
0
        public void ConcatQueryString()
        {
            var mockAcsRequest = new MockAcsRequest();

            Dictionary <string, string> tmpDic = null;

            // When parameters is null
            var result = MockAcsRequest.ConcatQueryString(tmpDic);

            Assert.Null(result);

            // when parameters is empty
            tmpDic = new Dictionary <string, string>();
            result = MockAcsRequest.ConcatQueryString(tmpDic);

            // Get the empty not null
            Assert.NotNull(result);
            Assert.Empty(result);

            // When parammters is not null
            tmpDic = new Dictionary <string, string> {
                { "foo", "bar" }, { "a", "A" }, { "n", null }
            };
            result = MockAcsRequest.ConcatQueryString(tmpDic);
            Assert.Equal("foo=bar&a=A&n", result);
        }
예제 #2
0
        public void SignRequest()
        {
            var tmpDic = new Dictionary <string, string> {
                { "foo", "bar" }, { "a", "A" }, { "n", null }
            };

            var mockAcsRequest = new MockAcsRequest("https://www.alibabacloud.com/");
            var signer         = new HmacSHA1Signer();
            var credential     = new Credential("accessKeyId", "accessKeySecret", "securityToken");
            var domain         = new ProductDomain();

            MockAcsRequest.ConcatQueryString(tmpDic);

            var request = mockAcsRequest.SignRequest(signer, credential, FormatType.JSON, domain);

            Assert.Equal("Instance by MockAcsRequest", request.Url);
        }