public async Task ShouldCreateEmbedShare() { // Arrange var outputFormatIds = new List <string>() { "Original" }; var shareContentItems = new List <ShareContent> { new ShareContent { ContentId = await _fixture.GetRandomContentIdAsync(string.Empty, 30), OutputFormatIds = outputFormatIds }, new ShareContent { ContentId = await _fixture.GetRandomContentIdAsync(string.Empty, 30), OutputFormatIds = outputFormatIds } }; var request = new ShareEmbedCreateRequest { Contents = shareContentItems, Description = "Description of Embed share bbb", ExpirationDate = new DateTime(2020, 12, 31), Name = "Embed share bbb" }; // Act var createResult = await _client.Shares.CreateAsync(request); /// Assert var share = await _client.Shares.GetAsync(createResult.ShareId); Assert.Equal(createResult.ShareId, share.Id); }
public async Task ShouldGetShareByToken() { /// Arrange var outputFormatIds = new List <string> { "Original", "Preview" }; var shareContentItems = new List <ShareContent> { new ShareContent { ContentId = await _fixture.GetRandomContentIdAsync(string.Empty, 30), OutputFormatIds = outputFormatIds }, new ShareContent { ContentId = await _fixture.GetRandomContentIdAsync(string.Empty, 30), OutputFormatIds = outputFormatIds } }; var request = new ShareEmbedCreateRequest { Contents = shareContentItems, Description = "Description of Embed share", ExpirationDate = new DateTime(2020, 12, 31), Name = "Embed share" }; var createResult = await _client.Shares.CreateAsync(request); var embedDetail = await _client.Shares.GetAsync(createResult.ShareId); /// Act var result = await _client.PublicAccess.GetShareAsync(((ShareDataEmbed)embedDetail.Data).Token); /// Assert Assert.NotNull(result); }
public async Task ShouldAggregate() { /// Arrange var outputFormatIds = new List <string>() { "Original" }; var shareContentItems = new List <ShareContent> { new ShareContent { ContentId = await _fixture.GetRandomContentIdAsync(string.Empty, 30), OutputFormatIds = outputFormatIds }, new ShareContent { ContentId = await _fixture.GetRandomContentIdAsync(string.Empty, 30), OutputFormatIds = outputFormatIds } }; var createRequest = new ShareEmbedCreateRequest { Contents = shareContentItems, Description = "Description of Embed share bbb", ExpirationDate = new DateTime(2020, 12, 31), Name = "Embed share bbb" }; await _client.Shares.CreateAsync(createRequest); /// Act var request = new ShareAggregationRequest { SearchString = string.Empty, Aggregators = new List <AggregatorBase> { new TermsAggregator { Field = nameof(Share.ShareType).ToLowerCamelCase(), Size = 10, Name = "ShareType" } } }; var result = await _client.Shares.AggregateAsync(request); /// Assert var aggregation = result.GetByName("ShareType"); Assert.NotNull(aggregation); Assert.True(aggregation.AggregationResultItems.Count >= 1); }
public async Task ShouldDeleteMany() { /// Arrange var outputFormatIds = new List <string>() { "Original" }; var shareContentItems = new List <ShareContent> { new ShareContent { ContentId = await _fixture.GetRandomContentIdAsync(string.Empty, 30), OutputFormatIds = outputFormatIds }, new ShareContent { ContentId = await _fixture.GetRandomContentIdAsync(string.Empty, 30), OutputFormatIds = outputFormatIds } }; var createRequest = new ShareEmbedCreateRequest { Contents = shareContentItems, Description = "Description of Embed share bbb", ExpirationDate = new DateTime(2020, 12, 31), Name = "Embed share bbb" }; var createResult = await _client.Shares.CreateAsync(createRequest); var share = await _client.Shares.GetAsync(createResult.ShareId); Assert.Equal(createResult.ShareId, share.Id); /// Act var shareIds = new List <string> { createResult.ShareId }; var bulkResponse = await _client.Shares.DeleteManyAsync(shareIds); /// Assert Assert.All(bulkResponse.Rows, i => Assert.True(i.Succeeded)); await Assert.ThrowsAsync <ShareNotFoundException>(async() => await _client.Shares.GetAsync(createResult.ShareId)); }
public async Task ShouldGetShareByToken() { // Arrange var outputFormatIds = new List <string> { "Original", "Preview" }; var contentIds = new List <string>(); while (contentIds.Count < 2) { var contentId = await _fixture.GetRandomContentIdAsync(string.Empty, 30).ConfigureAwait(false); if (!contentIds.Contains(contentId)) { contentIds.Add(contentId); } } var shareContentItems = contentIds.Select(x => new ShareContent() { ContentId = x, OutputFormatIds = outputFormatIds }).ToList(); var request = new ShareEmbedCreateRequest { Contents = shareContentItems, Description = "Description of Embed share", ExpirationDate = new DateTime(2020, 12, 31), Name = "Embed share" }; var createResult = await _client.Share.CreateAsync(request).ConfigureAwait(false); var embedDetail = await _client.Share.GetAsync(createResult.ShareId).ConfigureAwait(false); // Act var result = await _client.Share.GetShareJsonAsync(((ShareDataEmbed)embedDetail.Data).Token).ConfigureAwait(false); // Assert Assert.NotNull(result); }
public async Task ShouldGetShareOutputByContentIdAndSize() { // Arrange transfer var timeout = TimeSpan.FromMinutes(2); var transferName = nameof(ShouldGetShareOutputByContentIdAndSize) + "-" + new Random().Next(1000, 9999); var filesInDirectory = Directory.GetFiles(_fixture.ExampleFilesBasePath, "0033_aeVA-j1y2BY.jpg").ToList(); var importFilePaths = filesInDirectory.Select(fn => new FileLocations(fn, $"{Path.GetFileNameWithoutExtension(fn)}_1{Path.GetExtension(fn)}")).ToList(); // Act var uploadOptions = new UploadOptions { SuccessDelegate = Console.WriteLine, ErrorDelegate = Console.WriteLine }; var createTransferResult = await _client.Transfer.UploadFilesAsync(transferName, importFilePaths, uploadOptions).ConfigureAwait(false); var importRequest = new ImportTransferRequest { ContentPermissionSetIds = new List <string>(), Metadata = null, LayerSchemaIds = new List <string>() }; await _client.Transfer.ImportAndWaitForCompletionAsync(createTransferResult.Transfer, importRequest, timeout).ConfigureAwait(false); // Assert var transferResult = await _client.Transfer.SearchFilesByTransferIdAsync(createTransferResult.Transfer.Id).ConfigureAwait(false); var contentIds = transferResult.Results.Select(r => r.ContentId).ToList(); Assert.Equal(importFilePaths.Count, contentIds.Count); // Arrange get share var contentId = contentIds.First(); var outputFormatIds = new List <string> { "Original", "Preview" }; var shareContentItems = new List <ShareContent> { new ShareContent { ContentId = contentId, OutputFormatIds = outputFormatIds }, }; var request = new ShareEmbedCreateRequest { Contents = shareContentItems, Description = "Description of Embed share", ExpirationDate = new DateTime(2020, 12, 31), Name = "Embed share" }; var createResult = await _client.Share.CreateAsync(request).ConfigureAwait(false); var embedDetail = await _client.Share.GetAsync(createResult.ShareId).ConfigureAwait(false); var shareOutput = (ShareOutputEmbed)embedDetail.ContentSelections.Single().Outputs.First(); // Act using (var result = await _client.Share.DownloadAsync(shareOutput.Token, 10, 10).ConfigureAwait(false)) { // Assert Assert.NotNull(result); } }