public async Task ShouldAggregate()
        {
            // Arrange
            await CreateShare(new ShareEmbedCreateRequest
            {
                Contents       = await GetRandomShareContent().ConfigureAwait(false),
                Description    = "Description of Embed share bbb",
                ExpirationDate = new DateTime(2020, 12, 31),
                Name           = "Embed share bbb"
            }).ConfigureAwait(false);

            // 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.Share.AggregateAsync(request).ConfigureAwait(false);

            // Assert
            var aggregation = result.GetByName("ShareType");

            aggregation.Should().NotBeNull();
            aggregation.AggregationResultItems.Count.Should().BeGreaterOrEqualTo(1);
        }
Example #2
0
        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);
        }