public async Task TryRetrieveSkuMetadataReturnsNoBlobContentWhenNotFound() { var config = new SkuMetadataBlobStorageConfiguration { StorageConnectionString = "hey, connect to storage!", Container = "the place where stuff lives" }; var mockStorage = new Mock <SkuMetadataBlobStorage>(config) { CallBase = true }; var blobName = "Henry"; mockStorage .Protected() .Setup <Task <(bool, string)> >("RetrieveBlobAsTextAsync", ItExpr.Is <string>(connection => connection == config.StorageConnectionString), ItExpr.Is <string>(container => container == config.Container), ItExpr.Is <string>(sku => sku == blobName)) .Returns(Task.FromResult <(bool, string)>((false, null))) .Verifiable("The blob text should have been requested"); var result = await mockStorage.Object.TryRetrieveSkuMetadataAsync(blobName); result.Found.Should().BeFalse("because no content was fount"); result.Metadata.Should().BeNull("because no content swas returned"); mockStorage.VerifyAll(); }
/// <summary> /// Initializes a new instance of the <see cref="SkuMetadataBlobStorage"/> class. /// </summary> /// /// <param name="configuration">The configuration to use for storage operations.</param> /// public SkuMetadataBlobStorage(SkuMetadataBlobStorageConfiguration configuration) { this.configuration = configuration ?? throw new ArgumentNullException(nameof(configuration)); }