本文整理汇总了PHP中Tests\Framework\TestResources::getMediaStorageServicesConnectionString方法的典型用法代码示例。如果您正苦于以下问题:PHP TestResources::getMediaStorageServicesConnectionString方法的具体用法?PHP TestResources::getMediaStorageServicesConnectionString怎么用?PHP TestResources::getMediaStorageServicesConnectionString使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Tests\Framework\TestResources
的用法示例。
在下文中一共展示了TestResources::getMediaStorageServicesConnectionString方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: testBulkIngestEncryptedAsset
public function testBulkIngestEncryptedAsset()
{
// Setup
$asset = new Asset(Asset::OPTIONS_STORAGE_ENCRYPTED);
$asset->setName(TestResources::MEDIA_SERVICES_ASSET_NAME . $this->createSuffix());
$asset = $this->createAsset($asset);
$aesKey = Utilities::generateCryptoKey(32);
$protectionKeyId = $this->restProxy->getProtectionKeyId(ProtectionKeyTypes::X509_CERTIFICATE_THUMBPRINT);
$protectionKey = $this->restProxy->getProtectionKey($protectionKeyId);
$contentKey = new ContentKey();
$contentKey->setContentKey($aesKey, $protectionKey);
$contentKey->setProtectionKeyId($protectionKeyId);
$contentKey->setProtectionKeyType(ProtectionKeyTypes::X509_CERTIFICATE_THUMBPRINT);
$contentKey->setContentKeyType(ContentKeyTypes::STORAGE_ENCRYPTION);
$contentKey = $this->createContentKey($contentKey);
$this->restProxy->linkContentKeyToAsset($asset, $contentKey);
$fileName = TestResources::MEDIA_SERVICES_DUMMY_FILE_NAME;
$otherFileName = TestResources::MEDIA_SERVICES_DUMMY_FILE_NAME_1;
$manifest = new IngestManifest();
$manifest->setName('IngestManifest' . $this->createSuffix());
$manifest = $this->createIngestManifest($manifest);
$manifestAsset = new IngestManifestAsset($manifest->getId());
$manifestAsset = $this->createIngestManifestAsset($manifestAsset, $asset);
$manifestFile1 = new IngestManifestFile($fileName, $manifest->getId(), $manifestAsset->getId());
$manifestFile2 = new IngestManifestFile($otherFileName, $manifest->getId(), $manifestAsset->getId());
$initializationVector1 = base64_encode(Utilities::generateCryptoKey(8));
$initializationVector2 = base64_encode(Utilities::generateCryptoKey(8));
$manifestFile1->setIsEncrypted(true);
$manifestFile1->setEncryptionKeyId($contentKey->getId());
$manifestFile1->setEncryptionScheme(EncryptionSchemes::STORAGE_ENCRYPTION);
$manifestFile1->setEncryptionVersion(Resources::MEDIA_SERVICES_ENCRYPTION_VERSION);
$manifestFile1->setInitializationVector($initializationVector1);
$manifestFile2->setIsEncrypted(true);
$manifestFile2->setEncryptionKeyId($contentKey->getId());
$manifestFile2->setEncryptionScheme(EncryptionSchemes::STORAGE_ENCRYPTION);
$manifestFile2->setEncryptionVersion(Resources::MEDIA_SERVICES_ENCRYPTION_VERSION);
$manifestFile2->setInitializationVector($initializationVector2);
$manifestFile1 = $this->createIngestManifestFile($manifestFile1);
$manifestFile2 = $this->createIngestManifestFile($manifestFile2);
$initialStat = $this->restProxy->getIngestManifest($manifest);
$blobUrl = $manifest->getBlobStorageUriForUpload();
$blobUrlParts = explode('/', $blobUrl);
$container = array_pop($blobUrlParts);
$blobRestProxy = $this->builder->createBlobService(TestResources::getMediaStorageServicesConnectionString());
$blobRestProxy->createBlockBlob($container, $fileName, TestResources::MEDIA_SERVICES_DUMMY_FILE_CONTENT);
$this->waitIngestManifestFinishedFiles($manifest, 1);
$finishedFirstStat = $this->restProxy->getIngestManifest($manifest);
$blobRestProxy->createBlockBlob($container, $otherFileName, TestResources::MEDIA_SERVICES_DUMMY_FILE_CONTENT_1);
$this->waitIngestManifestFinishedFiles($manifest, 2);
$finishedSecondStat = $this->restProxy->getIngestManifest($manifest);
// Test
// Assert
$contentKeysFromAsset = $this->restProxy->getAssetContentKeys($asset);
$assetFiles = $this->restProxy->getAssetAssetFileList($asset);
$this->assertEquals(0, $initialStat->getStatistics()->getFinishedFilesCount());
$this->assertEquals(1, $finishedFirstStat->getStatistics()->getFinishedFilesCount());
$this->assertEquals(2, $finishedSecondStat->getStatistics()->getFinishedFilesCount());
$this->assertEquals($contentKey->getId(), $contentKeysFromAsset[0]->getId());
$this->assertEquals($contentKey->getId(), $manifestFile1->getEncryptionKeyId());
$this->assertEquals('true', $manifestFile1->getIsEncrypted());
$this->assertEquals(EncryptionSchemes::STORAGE_ENCRYPTION, $manifestFile1->getEncryptionScheme());
$this->assertEquals($initializationVector1, $manifestFile1->getInitializationVector());
$this->assertEquals(Resources::MEDIA_SERVICES_ENCRYPTION_VERSION, $manifestFile1->getEncryptionVersion());
$this->assertEquals($contentKey->getId(), $manifestFile2->getEncryptionKeyId());
$this->assertEquals('true', $manifestFile2->getIsEncrypted());
$this->assertEquals(EncryptionSchemes::STORAGE_ENCRYPTION, $manifestFile2->getEncryptionScheme());
$this->assertEquals($initializationVector2, $manifestFile2->getInitializationVector());
$this->assertEquals(Resources::MEDIA_SERVICES_ENCRYPTION_VERSION, $manifestFile2->getEncryptionVersion());
// Files order is not static, so we don't know the index of each file and need to serve them as a set
$resultFileNames = array($assetFiles[0]->getName(), $assetFiles[1]->getName());
$this->assertContains($otherFileName, $resultFileNames);
$this->assertEquals($asset->getId(), $assetFiles[0]->getParentAssetId());
$this->assertContains($fileName, $resultFileNames);
$this->assertEquals($asset->getId(), $assetFiles[1]->getParentAssetId());
}