public TestFixture(WebJobsTestEnvironment testEnvironment) { IHost host = new HostBuilder() .ConfigureDefaultTestHost <TestFixture>(b => { b.AddAzureStorageBlobs().AddAzureStorageQueues(); }) .Build(); this.QueueServiceClient = new QueueServiceClient(testEnvironment.PrimaryStorageAccountConnectionString); this.BlobServiceClient = new BlobServiceClient(testEnvironment.PrimaryStorageAccountConnectionString); }
public async Task InitializeAsync(WebJobsTestEnvironment testEnvironment) { RandomNameResolver nameResolver = new RandomNameResolver(); CacheMock = CreateMockFunctionDataCache(); CacheMock .Setup(c => c.IsEnabled) .Returns(true); IFunctionDataCache cache = CacheMock.Object; Host = new HostBuilder() .ConfigureDefaultTestHost <CacheableBlobsEndToEndTests>(b => { b.AddAzureStorageBlobs().AddAzureStorageQueues(); b.AddAzureStorageCoreServices(); }) .ConfigureServices(services => { services.AddSingleton <INameResolver>(nameResolver) .AddSingleton(cache); }) .Build(); JobHost = Host.GetJobHost(); BlobServiceClient = new BlobServiceClient(testEnvironment.PrimaryStorageAccountConnectionString); BlobContainer = BlobServiceClient.GetBlobContainerClient(nameResolver.ResolveInString(ContainerName)); Assert.False(await BlobContainer.ExistsAsync()); await BlobContainer.CreateAsync(); OutputBlobContainer = BlobServiceClient.GetBlobContainerClient(nameResolver.ResolveInString(OutputContainerName)); await Host.StartAsync(); // Upload some test blobs BlockBlobClient blob = BlobContainer.GetBlockBlobClient(InputBlobName); await blob.UploadTextAsync(TestData); // Get information about the uploaded blob BlobProperties blobProperties = await blob.GetPropertiesAsync(); string blobId = blob.Uri.ToString(); string blobVersion = blobProperties.ETag.ToString(); _expectedBlobCacheKey = new FunctionDataCacheKey(blobId, blobVersion); }
public TestFixture(WebJobsTestEnvironment testEnvironment) { IHost host = new HostBuilder() .ConfigureDefaultTestHost <TestFixture>(b => { b.AddAzureStorageBlobs().AddAzureStorageQueues(); }) .Build(); var queueOptions = new QueueClientOptions() { MessageEncoding = QueueMessageEncoding.Base64 }; this.QueueServiceClient = new QueueServiceClient(testEnvironment.PrimaryStorageAccountConnectionString, queueOptions); this.BlobServiceClient = new BlobServiceClient(testEnvironment.PrimaryStorageAccountConnectionString); }
public async Task InitializeAsync(WebJobsTestEnvironment testEnvironment) { RandomNameResolver nameResolver = new RandomNameResolver(); Host = new HostBuilder() .ConfigureDefaultTestHost <BlobBindingEndToEndTests>(b => { b.AddAzureStorageBlobs().AddAzureStorageQueues(); b.AddAzureStorageCoreServices(); }) .ConfigureServices(services => { services.AddSingleton <INameResolver>(nameResolver); }) .Build(); JobHost = Host.GetJobHost(); BlobServiceClient = new BlobServiceClient(testEnvironment.PrimaryStorageAccountConnectionString); BlobContainer = BlobServiceClient.GetBlobContainerClient(nameResolver.ResolveInString(ContainerName)); Assert.False(await BlobContainer.ExistsAsync()); await BlobContainer.CreateAsync(); OutputBlobContainer = BlobServiceClient.GetBlobContainerClient(nameResolver.ResolveInString(OutputContainerName)); var pageBlobContainer = BlobServiceClient.GetBlobContainerClient(nameResolver.ResolveInString(PageBlobContainerName)); Assert.False(await pageBlobContainer.ExistsAsync()); await pageBlobContainer.CreateAsync(); var hierarchicalBlobContainer = BlobServiceClient.GetBlobContainerClient(nameResolver.ResolveInString(HierarchicalBlobContainerName)); Assert.False(await hierarchicalBlobContainer.ExistsAsync()); await hierarchicalBlobContainer.CreateAsync(); var appendBlobContainer = BlobServiceClient.GetBlobContainerClient(nameResolver.ResolveInString(AppendBlobContainerName)); Assert.False(await appendBlobContainer.ExistsAsync()); await appendBlobContainer.CreateAsync(); await Host.StartAsync(); // upload some test blobs BlockBlobClient blob = BlobContainer.GetBlockBlobClient("blob1"); await blob.UploadTextAsync(TestData); blob = BlobContainer.GetBlockBlobClient("blob2"); await blob.UploadTextAsync(TestData); blob = BlobContainer.GetBlockBlobClient("blob3"); await blob.UploadTextAsync(TestData); blob = BlobContainer.GetBlockBlobClient("file1"); await blob.UploadTextAsync(TestData); blob = BlobContainer.GetBlockBlobClient("file2"); await blob.UploadTextAsync(TestData); blob = BlobContainer.GetBlockBlobClient("overwrite"); await blob.UploadTextAsync(TestData); // add a couple hierarchical blob paths blob = hierarchicalBlobContainer.GetBlockBlobClient("sub/blob1"); await blob.UploadTextAsync(TestData); blob = hierarchicalBlobContainer.GetBlockBlobClient("sub/blob2"); await blob.UploadTextAsync(TestData); blob = hierarchicalBlobContainer.GetBlockBlobClient("sub/sub/blob3"); await blob.UploadTextAsync(TestData); blob = hierarchicalBlobContainer.GetBlockBlobClient("blob4"); await blob.UploadTextAsync(TestData); byte[] bytes = new byte[512]; byte[] testBytes = Encoding.UTF8.GetBytes(TestData); for (int i = 0; i < testBytes.Length; i++) { bytes[i] = testBytes[i]; } PageBlobClient pageBlob = pageBlobContainer.GetPageBlobClient("blob1"); await pageBlob.UploadFromByteArrayAsync(bytes, 0); pageBlob = pageBlobContainer.GetPageBlobClient("blob2"); await pageBlob.UploadFromByteArrayAsync(bytes, 0); AppendBlobClient appendBlob = appendBlobContainer.GetAppendBlobClient("blob1"); await appendBlob.UploadTextAsync(TestData); appendBlob = appendBlobContainer.GetAppendBlobClient("blob2"); await appendBlob.UploadTextAsync(TestData); appendBlob = appendBlobContainer.GetAppendBlobClient("blob3"); await appendBlob.UploadTextAsync(TestData); }
public async Task InitializeAsync(WebJobsTestEnvironment testEnvironment) { RandomNameResolver nameResolver = new TestNameResolver(); Host = new HostBuilder() .ConfigureDefaultTestHost <MultipleStorageAccountsEndToEndTests>(b => { b.AddAzureStorageBlobs().AddAzureStorageQueues(); }) .ConfigureServices(services => { services.AddSingleton <INameResolver>(nameResolver); }) .Build(); BlobServiceClient1 = new BlobServiceClient(testEnvironment.PrimaryStorageAccountConnectionString); BlobServiceClient2 = new BlobServiceClient(testEnvironment.SecondaryStorageAccountConnectionString); QueueServiceClient1 = new QueueServiceClient(testEnvironment.PrimaryStorageAccountConnectionString); QueueServiceClient2 = new QueueServiceClient(testEnvironment.SecondaryStorageAccountConnectionString); await CleanContainersAsync(); string inputName = nameResolver.ResolveInString(Input); var inputContainer1 = BlobServiceClient1.GetBlobContainerClient(inputName); await inputContainer1.CreateIfNotExistsAsync(); string outputName = nameResolver.ResolveWholeString(Output); OutputContainer1 = BlobServiceClient1.GetBlobContainerClient(outputName); await OutputContainer1.CreateIfNotExistsAsync(); var inputContainer2 = BlobServiceClient2.GetBlobContainerClient(inputName); await inputContainer2.CreateIfNotExistsAsync(); OutputContainer2 = BlobServiceClient2.GetBlobContainerClient(outputName); await OutputContainer2.CreateIfNotExistsAsync(); var inputQueue1 = QueueServiceClient1.GetQueueClient(inputName); await inputQueue1.CreateIfNotExistsAsync(); OutputQueue1 = QueueServiceClient1.GetQueueClient(outputName); await OutputQueue1.CreateIfNotExistsAsync(); var inputQueue2 = QueueServiceClient2.GetQueueClient(inputName); await inputQueue2.CreateIfNotExistsAsync(); OutputQueue2 = QueueServiceClient2.GetQueueClient(outputName); await OutputQueue2.CreateIfNotExistsAsync(); string outputTableName = nameResolver.ResolveWholeString(OutputTableName); // upload some test blobs to the input containers of both storage accounts BlockBlobClient blob = inputContainer1.GetBlockBlobClient("blob1"); await blob.UploadTextAsync(TestData); blob = inputContainer2.GetBlockBlobClient("blob2"); await blob.UploadTextAsync(TestData); // upload some test queue messages to the input queues of both storage accounts await inputQueue1.SendMessageAsync(TestData); await inputQueue2.SendMessageAsync(TestData); Host.Start(); }