public void ShouldReturnSearchSettings(ISearchResults searchResults,[Substitute] SearchService service, SearchSettings searchSettings, ISearchServiceRepository serviceRepository, ISearchSettingsRepository settingsRepository, QueryRepository queryRepository,   IRenderingPropertiesRepository renderingPropertiesRepository, string query)
 {
   settingsRepository.Get(Arg.Any<string>()).Returns(searchSettings);
   var controller = new SearchController(serviceRepository, settingsRepository, queryRepository, renderingPropertiesRepository);
   var result = controller.SearchSettings(query) as ViewResult;
   result.Model.Should().BeOfType<SearchSettings>();
 }
 public QueryableDatasourceRenderingModel(
     IRenderingPropertiesRepository renderingPropertiesRepository,
     ICorePipeline corePipeline)
 {
     this.renderingPropertiesRepository = renderingPropertiesRepository;
     this.CorePipeline = corePipeline;
 }
Пример #3
0
 public SearchController(ISearchServiceRepository serviceRepository, ISearchSettingsRepository settingsRepository, QueryRepository queryRepository, IRenderingPropertiesRepository renderingPropertiesRepository)
 {
     this.searchServiceRepository = serviceRepository;
       this.queryRepository = queryRepository;
       this.searchSettingsRepository = settingsRepository;
       this.renderingPropertiesRepository = renderingPropertiesRepository;
 }
 public QueryableDatasourceRenderingModel(
   IRenderingPropertiesRepository renderingPropertiesRepository,
   ICorePipeline corePipeline)
 {
   this.renderingPropertiesRepository = renderingPropertiesRepository;
   this.CorePipeline = corePipeline;
 }
Пример #5
0
 public SearchController(ISearchServiceRepository serviceRepository, ISearchContextRepository contextRepository, QueryRepository queryRepository, IRenderingPropertiesRepository renderingPropertiesRepository)
 {
   this.SearchServiceRepository = serviceRepository;
   this.QueryRepository = queryRepository;
   this.SearchContextRepository = contextRepository;
   this.RenderingPropertiesRepository = renderingPropertiesRepository;
 }
Пример #6
0
 public SearchController(ISearchServiceRepository serviceRepository, ISearchSettingsRepository settingsRepository, QueryRepository queryRepository, IRenderingPropertiesRepository renderingPropertiesRepository)
 {
     this.searchServiceRepository       = serviceRepository;
     this.queryRepository               = queryRepository;
     this.searchSettingsRepository      = settingsRepository;
     this.renderingPropertiesRepository = renderingPropertiesRepository;
 }
Пример #7
0
 public void SearchResultsHeader_ShouldReturnModel(ISearchResults searchResults, [Substitute]SearchService service, SearchContext searchContext, ISearchServiceRepository serviceRepository, ISearchContextRepository contextRepository, QueryRepository queryRepository, IRenderingPropertiesRepository renderingPropertiesRepository, string query)
 {
   contextRepository.Get().Returns(searchContext);
   var controller = new SearchController(serviceRepository, contextRepository, queryRepository, renderingPropertiesRepository);
   var result = controller.SearchResultsHeader(query) as ViewResult;
   result.Model.Should().BeOfType<SearchContext>();
 }
Пример #8
0
 public BlogRepository(ISitecoreContext sitecoreContext, IRenderingPropertiesRepository renderingPropertiesRepository,
                       IBlogSearchRepository BlogSearchRepository)
 {
     this._sitecoreContext               = sitecoreContext;
     this.BlogSearchRepository           = BlogSearchRepository;
     this._renderingPropertiesRepository = renderingPropertiesRepository;
 }
 public SearchController(ISearchServiceRepository serviceRepository, ISearchContextRepository contextRepository, QueryRepository queryRepository, IRenderingPropertiesRepository renderingPropertiesRepository)
 {
     this.SearchServiceRepository       = serviceRepository;
     this.QueryRepository               = queryRepository;
     this.SearchContextRepository       = contextRepository;
     this.RenderingPropertiesRepository = renderingPropertiesRepository;
 }
Пример #10
0
        public void SutInstantiatesCustomCorePipelineWrapper(
            IRenderingPropertiesRepository renderingRepository,
            ICorePipeline corePipeline)
        {
            var sut = new QueryableDatasourceRenderingModel(renderingRepository, corePipeline);

            sut.CorePipeline.Should().BeSameAs(corePipeline);
        }
Пример #11
0
 public void ShouldReturnGlobalSearch(ISearchResults searchResults, [Substitute] SearchService service, ISearchServiceRepository serviceRepository, ISearchSettingsRepository settingsRepository, QueryRepository queryRepository, IRenderingPropertiesRepository renderingPropertiesRepository, string query)
 {
   service.Search(Arg.Any<IQuery>()).Returns(searchResults);
   serviceRepository.Get().Returns(service);
   var controller = new SearchController(serviceRepository, settingsRepository, queryRepository, renderingPropertiesRepository);
   var result = controller.GlobalSearch() as ViewResult;
   result.Model.Should().As<ISearchResults>();
 }
Пример #12
0
 public void ShouldReturnPagedSearchResult([Substitute] SearchService service, ISearchServiceRepository serviceRepository, ISearchSettingsRepository settingsRepository, QueryRepository queryRepository, string query, ISearchResults searchResults, [Substitute] SearchController searchController, IRenderingPropertiesRepository renderingPropertiesRepository, [Substitute] PagingSettings pagingSettings)
 {
   renderingPropertiesRepository.Get<PagingSettings>().Returns(pagingSettings);
   service.Search(Arg.Any<IQuery>()).Returns(searchResults);
   serviceRepository.Get().Returns(service);
   var controller = new SearchController(serviceRepository, settingsRepository, queryRepository, renderingPropertiesRepository);
   var result = controller.PagedSearchResults(query, null) as ViewResult;
   result.Model.Should().BeOfType<PagedSearchResults>();
 }
Пример #13
0
 public StoreController(
     IStoreService storeService,
     IRenderingPropertiesRepository renderingPropertiesRepository,
     ISitecoreContext sitecoreContext)
 {
     this.storeService = storeService;
     this.renderingPropertiesRepository = renderingPropertiesRepository;
     this.sitecoreContext = sitecoreContext;
 }
Пример #14
0
 public StoreService(
     ISitecoreContext sitecoreContext,
     IStoreSearchRepository storeSearchRepository,
     IRenderingPropertiesRepository renderingPropertiesRepository,
     ISiteSettingsProvider siteSettingsProvider)
 {
     this.sitecoreContext               = sitecoreContext;
     this.storeSearchRepository         = storeSearchRepository;
     this.renderingPropertiesRepository = renderingPropertiesRepository;
     this.siteSettingsProvider          = siteSettingsProvider;
 }
Пример #15
0
 public SearchService(
     IGlobalSearchRepository globalSearchRepository,
     IRenderingPropertiesRepository renderingPropertiesRepository,
     ISitecoreContext sitecoreContext,
     ISiteSettingsProvider siteSettingsProvider)
 {
     this.globalSearchRepository        = globalSearchRepository;
     this.renderingPropertiesRepository = renderingPropertiesRepository;
     this.sitecoreContext      = sitecoreContext;
     this.siteSettingsProvider = siteSettingsProvider;
 }
Пример #16
0
 public void SearchResults_ShouldReturnModel([Substitute]ControllerContext controllerContext, [Substitute]HttpContextBase context, ISearchResults searchResults, [Substitute]SearchService service, ISearchServiceRepository serviceRepository, ISearchContextRepository contextRepository, QueryRepository queryRepository, IRenderingPropertiesRepository renderingPropertiesRepository, string query)
 {
   service.Search(Arg.Any<IQuery>()).Returns(searchResults);
   serviceRepository.Get().Returns(service);
   var controller = new SearchController(serviceRepository, contextRepository, queryRepository, renderingPropertiesRepository)
                    {
                      ControllerContext = controllerContext
                    };
   controller.ControllerContext.HttpContext = context;
   var result = controller.SearchResults(query) as ViewResult;
   result.Model.Should().As<ISearchResults>();
 }
    public void Items_DifferentItemLanguageExists_ReturnsOnlyContextLanguage([Content] DbItem[] contentItems, ISearchIndex index, [ReplaceSearchProvider] SearchProvider searchProvider, [Content] Item renderingItem, IRenderingPropertiesRepository renderingPropertiesRepository)
    {
      //arrange
      var results = GetResults(contentItems).ToArray();
      results.First().Language = "noncontext";
      renderingPropertiesRepository.Get<QueryableDatasourceRenderingSettings>()
        .Returns(new QueryableDatasourceRenderingSettings
        {
          SearchResultsLimit = 10
        });

      InitIndexes(index, searchProvider, results.AsQueryable());
      var renderingModel = new QueryableDatasourceRenderingModel(renderingPropertiesRepository)
      {
        DatasourceString = "notEmpty"
      };

      //act
      var items = renderingModel.Items;

      //assert
      items.Count().Should().Be(contentItems.Length - 1);
      index.CreateSearchContext().ReceivedWithAnyArgs(1);
    }
    public void Items_NotLatestItemVersionExists_ReturnsOnlyLatestItems([Content] DbItem[] contentItems, ISearchIndex index, [Frozen] SearchProvider searchProvider, Switcher<SearchProvider> searchProviderSwitcher, [Content] Item renderingItem, IRenderingPropertiesRepository renderingPropertiesRepository)
    {
      //arrange
      var results = GetResults(contentItems).ToArray();
      results.First().IsLatestVersion = false;
      renderingPropertiesRepository.Get<QueryableDatasourceRenderingSettings>()
        .Returns(new QueryableDatasourceRenderingSettings
        {
          SearchResultsLimit = 10
        });

      InitIndexes(index, searchProvider, results.AsQueryable());
      var renderingModel = new QueryableDatasourceRenderingModel(renderingPropertiesRepository)
      {
        DatasourceString = "notEmpty"
      };

      //act
      var items = renderingModel.Items;

      //assert
      items.Count().Should().Be(contentItems.Length - 1);
      index.CreateSearchContext().ReceivedWithAnyArgs(1);
    }
Пример #19
0
 public SearchController(ISearchService searchService, IRenderingPropertiesRepository renderingPropertiesRepository)
 {
     this.searchService = searchService;
     this.renderingPropertiesRepository = renderingPropertiesRepository;
 }
Пример #20
0
 public QueryableDatasourceRenderingModel(IRenderingPropertiesRepository renderingPropertiesRepository)
 {
     this.renderingPropertiesRepository = renderingPropertiesRepository;
 }
        public void Items_NotLatestItemVersionExists_ReturnsOnlyLatestItems([Content] DbItem[] contentItems, ISearchIndex index, [ReplaceSearchProvider] SearchProvider searchProvider, [Content] Item renderingItem, IRenderingPropertiesRepository renderingPropertiesRepository)
        {
            //arrange
            var results = GetResults(contentItems).ToArray();

            results.First().IsLatestVersion = false;
            renderingPropertiesRepository.Get <QueryableDatasourceRenderingSettings>()
            .Returns(new QueryableDatasourceRenderingSettings
            {
                SearchResultsLimit = 10
            });

            InitIndexes(index, searchProvider, results.AsQueryable());
            var renderingModel = new QueryableDatasourceRenderingModel(renderingPropertiesRepository)
            {
                DatasourceString = "notEmpty"
            };

            //act
            var items = renderingModel.Items;

            //assert
            items.Count().Should().Be(contentItems.Length - 1);
            index.CreateSearchContext().ReceivedWithAnyArgs(1);
        }
        public void Items_IndexEmpty_ReturnsEmptyCollection([ResolvePipeline("getRenderingDatasource")] EmptyPipeline processor, List <DbItem> indexedItems, ISearchIndex index, string indexName, [ReplaceSearchProvider] SearchProvider searchProvider, [Content] Item renderingItem, IRenderingPropertiesRepository renderingPropertiesRepository)
        {
            //arrange
            InitIndexes(index, searchProvider, new List <SearchResultItem>().AsQueryable());
            renderingPropertiesRepository.Get <QueryableDatasourceRenderingSettings>()
            .Returns(new QueryableDatasourceRenderingSettings
            {
                SearchResultsLimit = 10
            });

            var renderingModel = new QueryableDatasourceRenderingModel(renderingPropertiesRepository)
            {
                DatasourceString = "notEmpty"
            };

            //act
            var items = renderingModel.Items;

            //assert
            items.Count().Should().Be(0);
            index.CreateSearchContext().ReceivedWithAnyArgs(1);
        }
        public void Items_StandardValuesExists_IgnoresItemsUnderTemplates(Db db, ISearchIndex index,
                                                                          [ReplaceSearchProvider] SearchProvider searchProvider, [Content] Item renderingItem, IRenderingPropertiesRepository renderingPropertiesRepository)
        {
            //arrange
            var templateID = ID.NewID;

            db.Add(new DbTemplate("Sample", templateID));
            var stdValues = db.GetItem("/sitecore/templates/Sample").Add(Sitecore.Constants.StandardValuesItemName, new TemplateID(templateID));

            renderingPropertiesRepository.Get <QueryableDatasourceRenderingSettings>()
            .Returns(new QueryableDatasourceRenderingSettings
            {
                SearchResultsLimit = 10
            });

            var results = GetResults(new List <DbItem>
            {
                new DbItem(Sitecore.Constants.StandardValuesItemName, stdValues.ID)
            });

            InitIndexes(index, searchProvider, results);
            var renderingModel = new QueryableDatasourceRenderingModel(renderingPropertiesRepository)
            {
                DatasourceString = "notEmpty"
            };

            //act
            var items = renderingModel.Items.ToArray();


            //assert
            items.Count().Should().Be(0);
        }
    public void Items_IndexHaveNonexistentItems_ReturnsExistentItems([Content] DbItem[] contentItems, DbItem brokenItem,
      List<DbItem> indexedItems, ISearchIndex index, string indexName,
      [Frozen] SearchProvider searchProvider, Switcher<SearchProvider> searchProviderSwitcher,
      [Content] Item renderingItem, IRenderingPropertiesRepository renderingPropertiesRepository)
    {
      //arrange
      indexedItems.AddRange(contentItems);
      indexedItems.Add(brokenItem);
      renderingPropertiesRepository.Get<QueryableDatasourceRenderingSettings>()
        .Returns(new QueryableDatasourceRenderingSettings
        {
          SearchResultsLimit = 10
        });

      var results = GetResults(indexedItems);

      InitIndexes(index, searchProvider, results);
      var renderingModel = new QueryableDatasourceRenderingModel(renderingPropertiesRepository)
      {
        DatasourceString = "notEmpty"
      };

      //act
      var items = renderingModel.Items.ToArray();


      //assert
      items.Count().Should().Be(contentItems.Length);
      index.CreateSearchContext().ReceivedWithAnyArgs(1);
    }
    public void Items_IndexEmpty_ReturnsEmptyCollection(List<DbItem> indexedItems, ISearchIndex index, string indexName, [Frozen] SearchProvider searchProvider, Switcher<SearchProvider> searchProviderSwitcher, [Content] Item renderingItem, IRenderingPropertiesRepository renderingPropertiesRepository)
    {
      //arrange
      InitIndexes(index, searchProvider, new List<SearchResultItem>().AsQueryable());
      renderingPropertiesRepository.Get<QueryableDatasourceRenderingSettings>()
        .Returns(new QueryableDatasourceRenderingSettings
        {
          SearchResultsLimit = 10
        });

      var renderingModel = new QueryableDatasourceRenderingModel(renderingPropertiesRepository)
      {
        DatasourceString = "notEmpty"
      };

      //act
      var items = renderingModel.Items;

      //assert
      items.Count().Should().Be(0);
      index.CreateSearchContext().ReceivedWithAnyArgs(1);
    }
Пример #26
0
 public SearchController(ISearchContextRepository contextRepository, QueryRepository queryRepository, IRenderingPropertiesRepository renderingPropertiesRepository) : this(new SearchServiceRepository(contextRepository.Get()), contextRepository, queryRepository, renderingPropertiesRepository)
 {
 }
Пример #27
0
        public void ShouldReturnSearchResults([Substitute] ControllerContext controllerContext, [Substitute] HttpContextBase context, ISearchResults searchResults, [Substitute] SearchService service, ISearchServiceRepository serviceRepository, ISearchSettingsRepository settingsRepository, QueryRepository queryRepository, IRenderingPropertiesRepository renderingPropertiesRepository, string query)
        {
            service.Search(Arg.Any <IQuery>()).Returns(searchResults);
            serviceRepository.Get().Returns(service);
            var controller = new SearchController(serviceRepository, settingsRepository, queryRepository, renderingPropertiesRepository);

            controller.ControllerContext             = controllerContext;
            controller.ControllerContext.HttpContext = context;
            var result = controller.SearchResults(query) as ViewResult;

            result.Model.Should().As <ISearchResults>();
        }
 public SearchController(ISearchContextRepository contextRepository, QueryRepository queryRepository, IRenderingPropertiesRepository renderingPropertiesRepository) : this(new SearchServiceRepository(contextRepository.Get()), contextRepository, queryRepository, renderingPropertiesRepository)
 {
 }
    public void Items_StandardValuesExistsInContentTree_IgnoresStandartValueByName(Db db, ISearchIndex index, [Frozen] SearchProvider searchProvider, Switcher<SearchProvider> searchProviderSwitcher, IRenderingPropertiesRepository renderingPropertiesRepository)
    {
      //arrange
      var id = ID.NewID;
      var dbItem = new DbItem(Sitecore.Constants.StandardValuesItemName, id);
      db.Add(dbItem);

      renderingPropertiesRepository.Get<QueryableDatasourceRenderingSettings>().Returns(new QueryableDatasourceRenderingSettings
      {
        SearchResultsLimit = 10
      });

      var results = GetResults(new List<DbItem>
      {
        dbItem
      });

      InitIndexes(index, searchProvider, results);
      var renderingModel = new QueryableDatasourceRenderingModel(renderingPropertiesRepository)
      {
        DatasourceString = "notEmpty"
      };

      //act
      var items = renderingModel.Items.ToArray();


      //assert
      items.Count().Should().Be(0);
    }
 public void SutInstantiatesCustomCorePipelineWrapper(
   IRenderingPropertiesRepository renderingRepository,
   ICorePipeline corePipeline)
 {
   var sut = new QueryableDatasourceRenderingModel(renderingRepository, corePipeline);
   sut.CorePipeline.Should().BeSameAs(corePipeline);
 }
 public QueryableDatasourceRenderingModel(IRenderingPropertiesRepository renderingPropertiesRepository)
 {
   this.renderingPropertiesRepository = renderingPropertiesRepository;
 }
Пример #32
0
 public SearchService(SearchResultsViewModelFactory searchResultsViewModelFactory, IRenderingPropertiesRepository renderingPropertiesRepository, ISearchServiceRepository searchServiceRepository, ISearchContextRepository searchContextRepository, FacetQueryStringService facetQueryStringService, ITrackerService trackerService)
 {
     this.SearchResultsViewModelFactory = searchResultsViewModelFactory;
     this.RenderingPropertiesRepository = renderingPropertiesRepository;
     this.SearchServiceRepository       = searchServiceRepository;
     this.SearchContextRepository       = searchContextRepository;
     this.FacetQueryStringService       = facetQueryStringService;
     this.TrackerService = trackerService;
 }
    public void Items_IndexMatchDb_ReturnsAllItems([Content] DbItem[] contentItems, ISearchIndex index, [ReplaceSearchProvider] SearchProvider searchProvider, [Content] Item renderingItem, IRenderingPropertiesRepository renderingPropertiesRepository)
    {
      //arrange
      var results = GetResults(contentItems);
      renderingPropertiesRepository.Get<QueryableDatasourceRenderingSettings>()
        .Returns(new QueryableDatasourceRenderingSettings
        {
          SearchResultsLimit = 10
        });

      InitIndexes(index, searchProvider, results);
      var renderingModel = new QueryableDatasourceRenderingModel(renderingPropertiesRepository)
      {
        DatasourceString = "notEmpty"
      };

      //act
      var items = renderingModel.Items;

      //assert
      items.Count().Should().Be(contentItems.Length);
      index.CreateSearchContext().ReceivedWithAnyArgs(1);
    }
    public void Items_StandardValuesExists_IgnoresItemsUnderTemplates(Db db, ISearchIndex index,
      [Frozen] SearchProvider searchProvider, Switcher<SearchProvider> searchProviderSwitcher,
      [Content] Item renderingItem, IRenderingPropertiesRepository renderingPropertiesRepository)
    {
      //arrange
      var templateID = ID.NewID;
      db.Add(new DbTemplate("Sample", templateID));
      var stdValues = db.GetItem("/sitecore/templates/Sample").Add(Sitecore.Constants.StandardValuesItemName, new TemplateID(templateID));

      renderingPropertiesRepository.Get<QueryableDatasourceRenderingSettings>()
        .Returns(new QueryableDatasourceRenderingSettings
        {
          SearchResultsLimit = 10
        });

      var results = GetResults(new List<DbItem>
      {
        new DbItem(Sitecore.Constants.StandardValuesItemName, stdValues.ID)
      });

      InitIndexes(index, searchProvider, results);
      var renderingModel = new QueryableDatasourceRenderingModel(renderingPropertiesRepository)
      {
        DatasourceString = "notEmpty"
      };

      //act
      var items = renderingModel.Items.ToArray();


      //assert
      items.Count().Should().Be(0);
    }
Пример #35
0
 public SearchController(ISearchContextRepository contextRepository, FacetQueryStringService facetQueryStringService, SearchService searchService, IRenderingPropertiesRepository renderingPropertiesRepository)
 {
     this.SearchContextRepository       = contextRepository;
     this.FacetQueryStringService       = facetQueryStringService;
     this.SearchService                 = searchService;
     this.RenderingPropertiesRepository = renderingPropertiesRepository;
 }
Пример #36
0
        public void ShouldReturnPagedSearchResult([Substitute] SearchService service, ISearchServiceRepository serviceRepository, ISearchSettingsRepository settingsRepository, QueryRepository queryRepository, string query, ISearchResults searchResults, [Substitute] SearchController searchController, IRenderingPropertiesRepository renderingPropertiesRepository, [Substitute] PagingSettings pagingSettings)
        {
            renderingPropertiesRepository.Get <PagingSettings>().Returns(pagingSettings);
            service.Search(Arg.Any <IQuery>()).Returns(searchResults);
            serviceRepository.Get().Returns(service);
            var controller = new SearchController(serviceRepository, settingsRepository, queryRepository, renderingPropertiesRepository);
            var result     = controller.PagedSearchResults(query, null) as ViewResult;

            result.Model.Should().BeOfType <PagedSearchResults>();
        }
 public QueryableDatasourceRenderingModel(IRenderingPropertiesRepository renderingPropertiesRepository)
   : this(renderingPropertiesRepository, new CorePipelineWrapper())
 {
 }
    public void Items_ItemTemplateSet_FiltersByTemplateId(Db db, [Content] DbTemplate templateItem, [Content] DbItem[] contentItems, ISearchIndex index, [Frozen] SearchProvider searchProvider, Switcher<SearchProvider> searchProviderSwitcher, string indexName, [Content] Item renderingItem, IRenderingPropertiesRepository renderingPropertiesRepository)
    {
      //arrange
      var dbItem = new DbItem("templated", ID.NewID, templateItem.ID);
      db.Add(dbItem);
      var dbItems = contentItems.ToList();
      dbItems.Add(dbItem);
      var results = GetResults(dbItems);
      renderingPropertiesRepository.Get<QueryableDatasourceRenderingSettings>()
        .Returns(new QueryableDatasourceRenderingSettings
        {
          SearchResultsLimit = 10
        });

      InitIndexes(index, searchProvider, results);


      var renderingModel = new QueryableDatasourceRenderingModel(renderingPropertiesRepository)
      {
        Rendering = new Rendering(),
        DatasourceString = "notEmpty",
        DatasourceTemplate = db.GetItem(templateItem.ID)
      };

      //act
      var items = renderingModel.Items;

      //assert
      items.Count().Should().Be(1);
      index.CreateSearchContext().ReceivedWithAnyArgs(1);
    }
        public void Items_ItemTemplateSet_FiltersByTemplateId(Db db, [Content] DbTemplate templateItem, [Content] DbItem[] contentItems, ISearchIndex index, [ReplaceSearchProvider] SearchProvider searchProvider, string indexName, [Content] Item renderingItem, IRenderingPropertiesRepository renderingPropertiesRepository)
        {
            //arrange
            var dbItem = new DbItem("templated", ID.NewID, templateItem.ID);

            db.Add(dbItem);
            var dbItems = contentItems.ToList();

            dbItems.Add(dbItem);
            var results = GetResults(dbItems);

            renderingPropertiesRepository.Get <QueryableDatasourceRenderingSettings>()
            .Returns(new QueryableDatasourceRenderingSettings
            {
                SearchResultsLimit = 10
            });

            InitIndexes(index, searchProvider, results);


            var renderingModel = new QueryableDatasourceRenderingModel(renderingPropertiesRepository)
            {
                Rendering          = new Rendering(),
                DatasourceString   = "notEmpty",
                DatasourceTemplate = db.GetItem(templateItem.ID)
            };

            //act
            var items = renderingModel.Items;

            //assert
            items.Count().Should().Be(1);
            index.CreateSearchContext().ReceivedWithAnyArgs(1);
        }
        public void Items_IndexHaveNonexistentItems_ReturnsExistentItems([Content] DbItem[] contentItems, DbItem brokenItem,
                                                                         List <DbItem> indexedItems, ISearchIndex index, string indexName,
                                                                         [ReplaceSearchProvider] SearchProvider searchProvider, [Content] Item renderingItem, IRenderingPropertiesRepository renderingPropertiesRepository)
        {
            //arrange
            indexedItems.AddRange(contentItems);
            indexedItems.Add(brokenItem);
            renderingPropertiesRepository.Get <QueryableDatasourceRenderingSettings>()
            .Returns(new QueryableDatasourceRenderingSettings
            {
                SearchResultsLimit = 10
            });

            var results = GetResults(indexedItems);

            InitIndexes(index, searchProvider, results);
            var renderingModel = new QueryableDatasourceRenderingModel(renderingPropertiesRepository)
            {
                DatasourceString = "notEmpty"
            };

            //act
            var items = renderingModel.Items.ToArray();


            //assert
            items.Count().Should().Be(contentItems.Length);
            index.CreateSearchContext().ReceivedWithAnyArgs(1);
        }
Пример #41
0
        public void ShouldReturnSearchSettings(ISearchResults searchResults, [Substitute] SearchService service, SearchSettings searchSettings, ISearchServiceRepository serviceRepository, ISearchSettingsRepository settingsRepository, QueryRepository queryRepository, IRenderingPropertiesRepository renderingPropertiesRepository, string query)
        {
            settingsRepository.Get(Arg.Any <string>()).Returns(searchSettings);
            var controller = new SearchController(serviceRepository, settingsRepository, queryRepository, renderingPropertiesRepository);
            var result     = controller.SearchSettings(query) as ViewResult;

            result.Model.Should().BeOfType <SearchSettings>();
        }
Пример #42
0
 public PagingService(IRenderingPropertiesRepository renderingPropertiesRepository)
 {
     this.renderingPropertiesRepository = renderingPropertiesRepository;
 }
Пример #43
0
        public void ShouldReturnGlobalSearch(ISearchResults searchResults, [Substitute] SearchService service, [Substitute] SearchSettings settings, ISearchServiceRepository serviceRepository, ISearchSettingsRepository settingsRepository, QueryRepository queryRepository, IRenderingPropertiesRepository renderingPropertiesRepository, string query)
        {
            service.Search(Arg.Any <IQuery>()).Returns(searchResults);
            serviceRepository.Get().Returns(service);
            settingsRepository.Get().Returns(settings);
            var controller = new SearchController(serviceRepository, settingsRepository, queryRepository, renderingPropertiesRepository);
            var result     = controller.GlobalSearch() as ViewResult;

            result.Model.Should().As <ISearchResults>();
        }
 public QueryableDatasourceRenderingModel(IRenderingPropertiesRepository renderingPropertiesRepository)
     : this(renderingPropertiesRepository, new CorePipelineWrapper())
 {
 }
        public void Items_IndexMatchDb_ReturnsAllItems([Content] DbItem[] contentItems, ISearchIndex index, [ReplaceSearchProvider] SearchProvider searchProvider, [Content] Item renderingItem, IRenderingPropertiesRepository renderingPropertiesRepository)
        {
            //arrange
            var results = GetResults(contentItems);

            renderingPropertiesRepository.Get <QueryableDatasourceRenderingSettings>()
            .Returns(new QueryableDatasourceRenderingSettings
            {
                SearchResultsLimit = 10
            });

            InitIndexes(index, searchProvider, results);
            var renderingModel = new QueryableDatasourceRenderingModel(renderingPropertiesRepository)
            {
                DatasourceString = "notEmpty"
            };

            //act
            var items = renderingModel.Items;

            //assert
            items.Count().Should().Be(contentItems.Length);
            index.CreateSearchContext().ReceivedWithAnyArgs(1);
        }
Пример #46
0
        public void Items_DifferentItemLanguageExists_ReturnsOnlyContextLanguage([Content] DbItem[] contentItems, ISearchIndex index, [Frozen] SearchProvider searchProvider, Switcher <SearchProvider> searchProviderSwitcher, [Content] Item renderingItem, IRenderingPropertiesRepository renderingPropertiesRepository)
        {
            //arrange
            var results = GetResults(contentItems).ToArray();

            results.First().Language = "noncontext";
            renderingPropertiesRepository.Get <QueryableDatasourceRenderingSettings>()
            .Returns(new QueryableDatasourceRenderingSettings
            {
                SearchResultsLimit = 10
            });

            InitIndexes(index, searchProvider, results.AsQueryable());
            var renderingModel = new QueryableDatasourceRenderingModel(renderingPropertiesRepository)
            {
                DatasourceString = "notEmpty"
            };

            //act
            var items = renderingModel.Items;

            //assert
            items.Count().Should().Be(contentItems.Length - 1);
            index.CreateSearchContext().ReceivedWithAnyArgs(1);
        }
        public void Items_StandardValuesExistsInContentTree_IgnoresStandartValueByName(Db db, ISearchIndex index, [ReplaceSearchProvider] SearchProvider searchProvider, IRenderingPropertiesRepository renderingPropertiesRepository)
        {
            //arrange
            var id     = ID.NewID;
            var dbItem = new DbItem(Sitecore.Constants.StandardValuesItemName, id);

            db.Add(dbItem);

            renderingPropertiesRepository.Get <QueryableDatasourceRenderingSettings>().Returns(new QueryableDatasourceRenderingSettings
            {
                SearchResultsLimit = 10
            });

            var results = GetResults(new List <DbItem>
            {
                dbItem
            });

            InitIndexes(index, searchProvider, results);
            var renderingModel = new QueryableDatasourceRenderingModel(renderingPropertiesRepository)
            {
                DatasourceString = "notEmpty"
            };

            //act
            var items = renderingModel.Items.ToArray();


            //assert
            items.Count().Should().Be(0);
        }
        public void SearchResultsHeader_ShouldReturnModel(ISearchResults searchResults, [Substitute] SearchService service, SearchContext searchContext, ISearchServiceRepository serviceRepository, ISearchContextRepository contextRepository, QueryRepository queryRepository, IRenderingPropertiesRepository renderingPropertiesRepository, string query)
        {
            contextRepository.Get().Returns(searchContext);
            var controller = new SearchController(serviceRepository, contextRepository, queryRepository, renderingPropertiesRepository);
            var result     = controller.SearchResultsHeader(query) as ViewResult;

            result.Model.Should().BeOfType <SearchContext>();
        }