コード例 #1
0
        public async Task <PutBlockResponse> PutBlockAsync(string containerName, string blobName, string blockId, byte[] data, string contentMD5 = null, string leaseId = null)
        {
            var request  = new PutBlockRequest(_account, containerName, blobName, blockId, data, contentMD5, leaseId);
            var response = await request.ExecuteAsync();

            return(response.Payload);
        }
コード例 #2
0
        public async Task Execute_PutBlockAsync_ResponseParsesHeadersCorrectly()
        {
            var expectedContainer = "test-container";
            var expectedBlob = "test-blob";
            var expectedBlock = Convert.ToBase64String(UTF8Encoding.UTF8.GetBytes("test-block-id"));
            var urlEncodedExpectedBlock = WebUtility.UrlEncode(expectedBlock);
            var expectedDate = DateTime.UtcNow;
            var expectedMD5 = "test-MD5";
            var expectedData = new byte[] { };

            var expectedUri = String.Format("{0}/{1}/{2}?comp=block&blockid={3}", _settings.BlobEndpoint, expectedContainer, expectedBlob, urlEncodedExpectedBlock);
            var expectedRawRequest = new TestableWebRequest(new Uri(expectedUri))
                                            .EnqueueResponse(new HttpResponseSettings((HttpStatusCode)201, "Created", "", false, new Dictionary<string, string>(){
                                                {"Content-MD5", expectedMD5},
                                                {"Date", expectedDate.ToString() }
                                            }));
            TestableWebRequestCreateFactory.GetFactory().AddRequest(expectedRawRequest);

            var request = new PutBlockRequest(_settings, expectedContainer, expectedBlob, expectedBlock, expectedData);

            var response = await request.ExecuteAsync();

            Assert.AreEqual(response.HttpStatus, HttpStatusCode.Created);
            Assert.AreEqual(response.Payload.ContentMD5, expectedMD5);
            Assert.IsTrue(Math.Abs(expectedDate.Subtract(response.Payload.Date).TotalMinutes) < 1);
        }
コード例 #3
0
        public PutBlockResponse PutBlock(string containerName, string blobName, string blockId, byte[] data, string contentMD5 = null, string leaseId = null)
        {
            var request  = new PutBlockRequest(_account, containerName, blobName, blockId, data, contentMD5, leaseId);
            var response = request.Execute();

            return(response.Payload);
        }
コード例 #4
0
        public async Task Execute_PutBlockAsync_ResponseParsesHeadersCorrectly()
        {
            var expectedContainer       = "test-container";
            var expectedBlob            = "test-blob";
            var expectedBlock           = Convert.ToBase64String(UTF8Encoding.UTF8.GetBytes("test-block-id"));
            var urlEncodedExpectedBlock = WebUtility.UrlEncode(expectedBlock);
            var expectedDate            = DateTime.UtcNow;
            var expectedMD5             = "test-MD5";
            var expectedData            = new byte[] { };

            var expectedUri        = String.Format("{0}/{1}/{2}?comp=block&blockid={3}", _settings.BlobEndpoint, expectedContainer, expectedBlob, urlEncodedExpectedBlock);
            var expectedRawRequest = new TestableWebRequest(new Uri(expectedUri))
                                     .EnqueueResponse(new HttpResponseSettings((HttpStatusCode)201, "Created", "", false, new Dictionary <string, string>()
            {
                { "Content-MD5", expectedMD5 },
                { "Date", expectedDate.ToString() }
            }));

            TestableWebRequestCreateFactory.GetFactory().AddRequest(expectedRawRequest);

            var request = new PutBlockRequest(_settings, expectedContainer, expectedBlob, expectedBlock, expectedData);

            var response = await request.ExecuteAsync();

            Assert.AreEqual(response.HttpStatus, HttpStatusCode.Created);
            Assert.AreEqual(response.Payload.ContentMD5, expectedMD5);
            Assert.IsTrue(Math.Abs(expectedDate.Subtract(response.Payload.Date).TotalMinutes) < 1);
        }