public IndexOperationBuilder( ISearchTextBuilder textBuilder, ISearchParametersBuilder parametersBuilder) { _textBuilder = textBuilder ?? throw new ArgumentNullException(nameof(textBuilder)); _parametersBuilder = parametersBuilder ?? throw new ArgumentNullException(nameof(parametersBuilder)); }
internal TracksApi(ISoundCloudRawClient soundCloudRawClient, IPaginationValidator paginationValidator, ITrackConverter trackConverter, ISearchParametersBuilder searchParametersBuilder) { this.soundCloudRawClient = soundCloudRawClient; this.paginationValidator = paginationValidator; this.trackConverter = trackConverter; this.searchParametersBuilder = searchParametersBuilder; }
public void SearchPropertyNameUtility_OrderBy() { ISearchParametersBuilder <Model> searchParametersBuilder = SearchParametersBuilder <Model> .Create(); Assert.IsNull(searchParametersBuilder.OrderBy); searchParametersBuilder.WithOrderBy(_ => Constants.SearchScore).WithThenByDescending(_ => Constants.SearchScore); Assert.IsNotNull(searchParametersBuilder.OrderBy); Assert.AreEqual(2, searchParametersBuilder.OrderBy.Count()); Assert.AreEqual("search.score() asc", searchParametersBuilder.OrderBy.ElementAtOrDefault(0)); Assert.AreEqual("search.score() desc", searchParametersBuilder.OrderBy.ElementAtOrDefault(1)); SearchParameters parameters = searchParametersBuilder.Build(); Assert.IsNotNull(parameters); Assert.IsNotNull(parameters.OrderBy); Assert.AreEqual(2, parameters.OrderBy.Count()); Assert.AreEqual("search.score() asc", parameters.OrderBy.ElementAtOrDefault(0)); Assert.AreEqual("search.score() desc", parameters.OrderBy.ElementAtOrDefault(1)); searchParametersBuilder.WithOrderByDescending(_ => Constants.SearchScore).WithThenBy(_ => Constants.SearchScore); Assert.IsNotNull(searchParametersBuilder.OrderBy); Assert.AreEqual(2, searchParametersBuilder.OrderBy.Count()); Assert.AreEqual("search.score() desc", searchParametersBuilder.OrderBy.ElementAtOrDefault(0)); Assert.AreEqual("search.score() asc", searchParametersBuilder.OrderBy.ElementAtOrDefault(1)); parameters = searchParametersBuilder.Build(); Assert.IsNotNull(parameters); Assert.IsNotNull(parameters.OrderBy); Assert.AreEqual(2, parameters.OrderBy.Count()); Assert.AreEqual("search.score() desc", parameters.OrderBy.ElementAtOrDefault(0)); Assert.AreEqual("search.score() asc", parameters.OrderBy.ElementAtOrDefault(1)); }
public SubresourceFactory( ISoundCloudRawClient soundCloudRawClient, IPaginationValidator paginationValidator, ITrackConverter trackConverter, IUserConverter userConverter, IPlaylistConverter playlistConverter, ICommentConverter commentConverter, IGroupConverter groupConverter, IWebProfileConverter webProfileConverter, IConnectionConverter connectionConverter, IActivityResultConverter activityResultConverter, IApplicationConverter applicationConverter, ISearchParametersBuilder searchParametersBuilder) { this.soundCloudRawClient = soundCloudRawClient; this.paginationValidator = paginationValidator; this.trackConverter = trackConverter; this.userConverter = userConverter; this.playlistConverter = playlistConverter; this.commentConverter = commentConverter; this.groupConverter = groupConverter; this.webProfileConverter = webProfileConverter; this.connectionConverter = connectionConverter; this.activityResultConverter = activityResultConverter; this.applicationConverter = applicationConverter; this.searchParametersBuilder = searchParametersBuilder; }
public void GetProductProjectionSearchParametersBuilderFromFactory() { ProductProjectionSearchParameters productAdditionalParameters = new ProductProjectionSearchParameters(); IParametersBuilderFactory <ISearchParametersBuilder> parametersBuilderFactory = this.clientFixture.GetService <IParametersBuilderFactory <ISearchParametersBuilder> >(); ISearchParametersBuilder parametersBuilder = parametersBuilderFactory.GetParameterBuilder(productAdditionalParameters); Assert.Equal(typeof(ProductProjectionSearchParametersBuilder), parametersBuilder.GetType()); }
private HttpContent GetHttpContent <T>(SearchCommand <T> command) { List <KeyValuePair <string, string> > parameters = new List <KeyValuePair <string, string> >(); if (command.SearchParameters != null) { ISearchParametersBuilder searchParametersBuilder = this.searchParametersBuilderFactory.GetParameterBuilder(command.SearchParameters); parameters.AddRange(searchParametersBuilder.GetSearchParameters(command.SearchParameters)); } parameters.AddRange(this.GetAdditionalParameters(command.AdditionalParameters)); return(new FormUrlEncodedContent(parameters)); }
public void SearchPropertyNameUtility_IncludeTotalResultCount() { ISearchParametersBuilder <Model> searchParametersBuilder = SearchParametersBuilder <Model> .Create(); Assert.IsFalse(searchParametersBuilder.IncludeTotalResultCount); searchParametersBuilder.WithIncludeTotalResultCount(true); Assert.IsTrue(searchParametersBuilder.IncludeTotalResultCount); SearchParameters parameters = searchParametersBuilder.Build(); Assert.IsNotNull(parameters); Assert.IsTrue(parameters.IncludeTotalResultCount); }
public void SearchPropertyNameUtility_SearchMode() { ISearchParametersBuilder <Model> searchParametersBuilder = SearchParametersBuilder <Model> .Create(); Assert.AreEqual(SearchMode.Any, searchParametersBuilder.SearchMode); searchParametersBuilder.WithSearchMode(SearchMode.All); Assert.AreEqual(SearchMode.All, searchParametersBuilder.SearchMode); SearchParameters parameters = searchParametersBuilder.Build(); Assert.IsNotNull(parameters); Assert.AreEqual(SearchMode.All, parameters.SearchMode); }
public void SearchPropertyNameUtility_Skip() { ISearchParametersBuilder <Model> searchParametersBuilder = SearchParametersBuilder <Model> .Create(); Assert.IsNull(searchParametersBuilder.Skip); searchParametersBuilder.WithSkip(1); Assert.IsNotNull(searchParametersBuilder.Skip); Assert.AreEqual(1, searchParametersBuilder.Skip); SearchParameters parameters = searchParametersBuilder.Build(); Assert.IsNotNull(parameters); Assert.AreEqual(1, parameters.Skip); }
public void SearchPropertyNameUtility_ScoringProfile() { ISearchParametersBuilder <Model> searchParametersBuilder = SearchParametersBuilder <Model> .Create(); Assert.IsNull(searchParametersBuilder.ScoringProfile); searchParametersBuilder.WithScoringProfile("test"); Assert.IsNotNull(searchParametersBuilder.ScoringProfile); Assert.AreEqual("test", searchParametersBuilder.ScoringProfile); SearchParameters parameters = searchParametersBuilder.Build(); Assert.IsNotNull(parameters); Assert.AreEqual("test", parameters.ScoringProfile); }
public void SearchPropertyNameUtility_ScoringParameters() { ISearchParametersBuilder <Model> searchParametersBuilder = SearchParametersBuilder <Model> .Create(); Assert.IsNull(searchParametersBuilder.ScoringParameters); searchParametersBuilder.WithScoringParameter(new ScoringParameter("foo", Enumerable.Empty <string>())); Assert.IsNotNull(searchParametersBuilder.ScoringParameters); Assert.AreEqual(1, searchParametersBuilder.ScoringParameters.Count()); SearchParameters parameters = searchParametersBuilder.Build(); Assert.IsNotNull(parameters); Assert.IsNotNull(parameters.ScoringParameters); Assert.AreEqual(1, parameters.ScoringParameters.Count()); }
public SubresourceFactoryBuilder() { var dateTimeConverter = new DateTimeConverter(); var tagListConverter = new TagListConverter(); userConverter = new UserConverter(); applicationConverter = new ApplicationConverter(); trackConverter = new TrackConverter(userConverter, tagListConverter, applicationConverter, dateTimeConverter); commentConverter = new CommentConverter(userConverter, dateTimeConverter); playlistConverter = new PlaylistConverter(userConverter, trackConverter, tagListConverter, dateTimeConverter); paginationValidator = new PaginationValidator(); groupConverter = new GroupConverter(userConverter, dateTimeConverter); webProfileConverter = new WebProfileConverter(dateTimeConverter); connectionConverter = new ConnectionConverter(dateTimeConverter); activityResultConverter = new ActivityResultConverter(trackConverter, commentConverter, userConverter, playlistConverter, dateTimeConverter); searchParametersBuilder = new CompositeSearchParametersBuilder(new IVersionDependentSearchParametersBuilder[] { new V1SearchParametersBuilder(), new V2SearchParametersBuilder() }); }
public void SearchPropertyNameUtility_HighlightFields() { ISearchParametersBuilder <Model> searchParametersBuilder = SearchParametersBuilder <Model> .Create(); Assert.IsNull(searchParametersBuilder.HighlightFields); searchParametersBuilder.WithHighlightField(_ => Constants.SearchScore); Assert.IsNotNull(searchParametersBuilder.HighlightFields); Assert.AreEqual(1, searchParametersBuilder.HighlightFields.Count()); Assert.AreEqual("search.score()", searchParametersBuilder.HighlightFields.ElementAtOrDefault(0)); SearchParameters parameters = searchParametersBuilder.Build(); Assert.IsNotNull(parameters); Assert.IsNotNull(parameters.HighlightFields); Assert.AreEqual(1, parameters.HighlightFields.Count()); Assert.AreEqual("search.score()", parameters.HighlightFields.ElementAtOrDefault(0)); }
public SearchStatusService( ISearchIndexClientWrapper searchIndex, ISearchIndexClientWrapper hijackIndex, ISearchParametersBuilder parametersBuilder, IAuxiliaryDataCache auxiliaryDataCache, ISecretRefresher secretRefresher, IOptionsSnapshot <SearchServiceConfiguration> options, IAzureSearchTelemetryService telemetryService, ILogger <SearchStatusService> logger) { _searchIndex = searchIndex ?? throw new ArgumentNullException(nameof(searchIndex)); _hijackIndex = hijackIndex ?? throw new ArgumentNullException(nameof(hijackIndex)); _parametersBuilder = parametersBuilder ?? throw new ArgumentNullException(nameof(parametersBuilder)); _auxiliaryDataCache = auxiliaryDataCache ?? throw new ArgumentNullException(nameof(auxiliaryDataCache)); _secretRefresher = secretRefresher ?? throw new ArgumentNullException(nameof(secretRefresher)); _options = options ?? throw new ArgumentNullException(nameof(options)); _telemetryService = telemetryService ?? throw new ArgumentNullException(nameof(telemetryService)); _logger = logger ?? throw new ArgumentNullException(nameof(logger)); }