public void PutBlockBlob_LeasedBlobWithCorrectLeaseIdSpecified_UploadsBlobSuccessfully() { var containerName = _util.GenerateSampleContainerName(_runId); var blobName = _util.GenerateSampleBlobName(_runId); _util.CreateContainer(containerName); _util.CreateBlockBlob(containerName, blobName); var correctLease = _util.LeaseBlob(containerName, blobName); IBlobServiceClient client = new BlobServiceClient(AccountSettings); var data = Encoding.UTF8.GetBytes("unit test content"); client.PutBlockBlob(containerName, blobName, data, leaseId: correctLease); _util.AssertBlobExists(containerName, blobName, BlobType.BlockBlob); }
public void PutBlockBlob_LeasedBlobWithIncorrectLeaseGiven_ThrowsLeaseIdMismatchWithBlobOperationAzureException() { var containerName = _util.GenerateSampleContainerName(_runId); var blobName = _util.GenerateSampleBlobName(_runId); _util.CreateContainer(containerName); _util.CreateBlockBlob(containerName, blobName); _util.LeaseBlob(containerName, blobName); IBlobServiceClient client = new BlobServiceClient(AccountSettings); var data = Encoding.UTF8.GetBytes("unit test content"); client.PutBlockBlob(containerName, blobName, data, leaseId: GetGuidString()); // throws exception }
public void PutBlockBlob_WithMetadata_UploadsMetadata() { var containerName = _util.GenerateSampleContainerName(_runId); var blobName = _util.GenerateSampleBlobName(_runId); _util.CreateContainer(containerName); IBlobServiceClient client = new BlobServiceClient(AccountSettings); var data = Encoding.UTF8.GetBytes("unit test content"); var expectedMetadata = new Dictionary<string, string>(){ { "firstValue", "1" }, { "secondValue", "2"} }; client.PutBlockBlob(containerName, blobName, data, metadata: expectedMetadata); var blob = _util.AssertBlobExists(containerName, blobName, BlobType.BlockBlob); Assert.IsTrue(blob.Metadata.Any(m => m.Key == "firstValue" && m.Value == "1"), "First value is missing or incorrect"); Assert.IsTrue(blob.Metadata.Any(m => m.Key == "secondValue" && m.Value == "2"), "Second value is missing or incorrect"); }
public void PutBlockBlob_RequiredArgsOnly_UploadsBlobSuccessfully() { var containerName = _util.GenerateSampleContainerName(_runId); var blobName = _util.GenerateSampleBlobName(_runId); _util.CreateContainer(containerName); IBlobServiceClient client = new BlobServiceClient(AccountSettings); var data = Encoding.UTF8.GetBytes("unit test content"); client.PutBlockBlob(containerName, blobName, data); _util.AssertBlobExists(containerName, blobName, BlobType.BlockBlob); }
public void PutBlockBlob_WithIncorrectContentMD5_ThrowsMD5MismatchAzureException() { var containerName = _util.GenerateSampleContainerName(_runId); var blobName = _util.GenerateSampleBlobName(_runId); _util.CreateContainer(containerName); IBlobServiceClient client = new BlobServiceClient(AccountSettings); var data = Encoding.UTF8.GetBytes("unit test content"); var someOtherData = Encoding.UTF8.GetBytes("different content"); var incorrectContentMD5 = Convert.ToBase64String((MD5.Create()).ComputeHash(someOtherData)); client.PutBlockBlob(containerName, blobName, data, contentMD5: incorrectContentMD5); // expects exception }
public void PutBlockBlob_WithCacheControl_UploadsWithCacheControl() { var containerName = _util.GenerateSampleContainerName(_runId); var blobName = _util.GenerateSampleBlobName(_runId); _util.CreateContainer(containerName); IBlobServiceClient client = new BlobServiceClient(AccountSettings); var data = Encoding.UTF8.GetBytes("unit test content"); const string expectedCacheControl = "123-ABC"; client.PutBlockBlob(containerName, blobName, data, cacheControl: expectedCacheControl); var blob = _util.AssertBlobExists(containerName, blobName, BlobType.BlockBlob); Assert.AreEqual(expectedCacheControl, blob.Properties.CacheControl); }
public void PutBlockBlob_WithContentMD5_UploadsWithSpecifiedContentMD5() { var containerName = _util.GenerateSampleContainerName(_runId); var blobName = _util.GenerateSampleBlobName(_runId); _util.CreateContainer(containerName); IBlobServiceClient client = new BlobServiceClient(AccountSettings); var data = Encoding.UTF8.GetBytes("unit test content"); var expectedContentMD5 = Convert.ToBase64String((MD5.Create()).ComputeHash(data)); client.PutBlockBlob(containerName, blobName, data, contentMD5: expectedContentMD5); var blob = _util.AssertBlobExists(containerName, blobName, BlobType.BlockBlob); //this next test is not a real one, just for roundtrip verification Assert.AreEqual(expectedContentMD5, blob.Properties.ContentMD5); }
public void PutBlockBlob_WithContentLanguage_UploadsWithSpecifiedContentLanguage() { var containerName = _util.GenerateSampleContainerName(_runId); var blobName = _util.GenerateSampleBlobName(_runId); _util.CreateContainer(containerName); IBlobServiceClient client = new BlobServiceClient(AccountSettings); var data = Encoding.UTF8.GetBytes("unit test content"); const string expectedContentLanguage = "gibberish"; client.PutBlockBlob(containerName, blobName, data, contentLanguage: expectedContentLanguage); var blob = _util.AssertBlobExists(containerName, blobName, BlobType.BlockBlob); Assert.AreEqual(expectedContentLanguage, blob.Properties.ContentLanguage); }
public void PutBlockBlob_LeasedBlobWithInvalidLeaseGiven_ThrowsArgumentException() { var containerName = _util.GenerateSampleContainerName(_runId); var blobName = _util.GenerateSampleBlobName(_runId); IBlobServiceClient client = new BlobServiceClient(AccountSettings); var data = Encoding.UTF8.GetBytes("unit test content"); client.PutBlockBlob(containerName, blobName, data, leaseId: InvalidLeaseId); // throws exception }
public void PutBlockBlob_WithContentEncoding_UploadsWithSpecifiedContentEncoding() { var containerName = GenerateSampleContainerName(); var blobName = GenerateSampleBlobName(); CreateContainer(containerName); IBlobServiceClient client = new BlobServiceClient(AccountSettings); var data = Encoding.UTF8.GetBytes("unit test content"); const string expectedContentEncoding = "UTF8"; client.PutBlockBlob(containerName, blobName, data, contentEncoding: expectedContentEncoding); var blob = AssertBlobExists(containerName, blobName, BlobType.BlockBlob); Assert.AreEqual(expectedContentEncoding, blob.Properties.ContentEncoding); }
public void PutBlockBlob_LeasedBlobWithNoLeaseGiven_ThrowsLeaseIdMissingAzureException() { var containerName = GenerateSampleContainerName(); var blobName = GenerateSampleBlobName(); CreateContainer(containerName); CreateBlockBlob(containerName, blobName); LeaseBlob(containerName, blobName); IBlobServiceClient client = new BlobServiceClient(AccountSettings); var data = Encoding.UTF8.GetBytes("unit test content"); client.PutBlockBlob(containerName, blobName, data); // throws exception }