Microsoft.WindowsAzure.MediaServices.Client.Tests.AssetTests.ShouldCreateAssetAsyncWithMultipleFiles C# (CSharp) Method

ShouldCreateAssetAsyncWithMultipleFiles() private method

private ShouldCreateAssetAsyncWithMultipleFiles ( ) : void
return void
        public void ShouldCreateAssetAsyncWithMultipleFiles()
        {
            string[] files = Directory.GetFiles("TestFiles");

            IAsset asset = _mediaContext.Assets.Create(Guid.NewGuid().ToString(), AssetCreationOptions.None);
            IAccessPolicy policy = _mediaContext.AccessPolicies.Create("Write", TimeSpan.FromMinutes(5), AccessPermissions.Write);
            ILocator locator = _mediaContext.Locators.CreateSasLocator(asset, policy);
            var blobclient = _mediaContext.MediaServicesClassFactory.GetBlobTransferClient();

            var tasks = new List<Task>();
            foreach (string filePath in files)
            {
                var info = new FileInfo(filePath);
                IAssetFile file = asset.AssetFiles.Create(info.Name);
                tasks.Add(file.UploadAsync(filePath, blobclient, locator, CancellationToken.None));
            }

            Task.WaitAll(tasks.ToArray());
            Assert.AreEqual(AssetState.Initialized, asset.State);
            Assert.AreEqual(files.Length, asset.AssetFiles.Count());
            Assert.AreEqual(1, asset.Locators.Count);

            foreach (IAssetFile assetFile in asset.AssetFiles)
            {
                Assert.IsTrue(files.Any(f => Path.GetFileName(f).Equals(assetFile.Name, StringComparison.OrdinalIgnoreCase)));
            }
        }
AssetTests