public async Task OpenWriteAsync_CreateEmptyBlob_WithHeaders() { const int bufferSize = Constants.KB; // Arrange await using IDisposingContainer <TContainerClient> disposingContainer = await GetDisposingContainerAsync(); TResourceClient client = GetResourceClient(disposingContainer.Container); HttpHeaderParameters headers = new HttpHeaderParameters { ContentType = "application/json", ContentLanguage = "en", }; // Act using (Stream stream = await OpenWriteAsync( client, overwrite: true, maxDataSize: Constants.KB, bufferSize: bufferSize, httpHeaders: headers)) { } // Assert Response response = await GetPropertiesAsync(client); Assert.IsTrue(response.Headers.TryGetValue("Content-Type", out string downloadedContentType)); Assert.AreEqual(headers.ContentType, downloadedContentType); Assert.IsTrue(response.Headers.TryGetValue("Content-Language", out string downloadedContentLanguage)); Assert.AreEqual(headers.ContentLanguage, downloadedContentLanguage); await(AdditionalAssertions?.Invoke(client) ?? Task.CompletedTask); }
/// <summary> /// Calls the 1:1 download method for the given resource client. /// </summary> /// <param name="client">Client to call the download on.</param> protected abstract Task <Stream> OpenWriteAsync( TResourceClient client, bool overwrite, int?bufferSize = default, TRequestConditions conditions = default, Dictionary <string, string> metadata = default, Dictionary <string, string> tags = default, HttpHeaderParameters httpHeaders = default, IProgress <long> progressHandler = default);