Esempio n. 1
0
        public void Parse(HabboHotel.GameClients.GameClient Session, ClientPacket Packet)
        {
            if (Session == null || Session.GetHabbo() == null || Session.GetHabbo().GetMessenger() == null)
            {
                return;
            }

            string Query = StringCharFilter.Escape(Packet.PopString().Replace("%", ""));

            if (Query.Length < 1 || Query.Length > 100)
            {
                return;
            }

            List <SearchResult> Friends     = new List <SearchResult>();
            List <SearchResult> OthersUsers = new List <SearchResult>();

            List <SearchResult> Results = SearchResultFactory.GetSearchResult(Query);

            foreach (SearchResult Result in Results.ToList())
            {
                if (Session.GetHabbo().GetMessenger().FriendshipExists(Result.UserId))
                {
                    Friends.Add(Result);
                }
                else
                {
                    OthersUsers.Add(Result);
                }
            }

            Session.SendMessage(new HabboSearchResultComposer(Friends, OthersUsers));
        }
Esempio n. 2
0
        public void Parse(GameClient session, ClientPacket packet)
        {
            if (session == null || session.GetHabbo() == null || session.GetHabbo().GetMessenger() == null)
            {
                return;
            }

            string query = StringCharFilter.Escape(packet.PopString().Replace("%", ""));

            if (query.Length < 1 || query.Length > 100)
            {
                return;
            }

            List <SearchResult> friends     = new List <SearchResult>();
            List <SearchResult> othersUsers = new List <SearchResult>();

            List <SearchResult> results = SearchResultFactory.GetSearchResult(query);

            foreach (SearchResult result in results.ToList())
            {
                if (session.GetHabbo().GetMessenger().FriendshipExists(result.UserId))
                {
                    friends.Add(result);
                }
                else
                {
                    othersUsers.Add(result);
                }
            }

            session.SendPacket(new HabboSearchResultComposer(friends, othersUsers));
        }
 public ContentSearchService(SearchResultFactory searchResultFactory, SearchContextPredicateBuilder predicateBuilder,
                             SearchContextFilterBuilder filterBuilder, ISearchTermProvider searchTermProvider)
 {
     _searchResultFactory = searchResultFactory;
     _predicateBuilder    = predicateBuilder;
     _filterBuilder       = filterBuilder;
     _searchTermProvider  = searchTermProvider;
 }
Esempio n. 4
0
        public void HandlesNullGracefully()
        {
            // Arrange
            var factory = new SearchResultFactory(_activeDocument);

            // Act
            var results = factory.Parse(null);

            // Assert
            Assert.That(results, Is.Not.Null.And.Empty);
        }
Esempio n. 5
0
        public async Task <SearchResult <IList <KeyWord> > > KeyWordAsync(string query, int page = 1)
        {
            var queryString = CreateQueryString();

            queryString.Add("query", query);
            queryString.Add("page", page.ToString());

            var searchResultDTO = await GetSearchResultAsync("search/keyword", queryString);

            return(SearchResultFactory.CreateList <KeyWord>(searchResultDTO));
        }
Esempio n. 6
0
        public async Task <SearchResult <IList <Company> > > CompaniesAsync(string query, int page = 1)
        {
            var queryString = CreateQueryString();

            queryString.Add("query", query);
            queryString.Add("page", page.ToString());

            var searchResultDTO = await GetSearchResultAsync("search/company", queryString);

            return(SearchResultFactory.CreateList <Company>(searchResultDTO));
        }
Esempio n. 7
0
        public async Task <SearchResult <IList <Collection> > > CollectionAsync(string query, string language = null, int page = 1)
        {
            var queryString = CreateQueryString();

            queryString.Add("query", query);
            queryString.Add("language", language);
            queryString.Add("page", page.ToString());

            var searchResultDTO = await GetSearchResultAsync("search/collection", queryString);

            return(SearchResultFactory.CreateList <Collection>(searchResultDTO));
        }
Esempio n. 8
0
        public void ParsesXPathWhichEvaluatesToBoolean()
        {
            // Arrange
            var factory          = new SearchResultFactory(_activeDocument);
            var evaluationResult = XElement.Parse(Xml).XPathEvaluate("count(/child/@name) > 0");

            // Act
            var result = factory.Parse(evaluationResult).Single();

            // Assert
            Assert.That(result.Value, Is.EqualTo(bool.TrueString));
        }
Esempio n. 9
0
        public void SetsLinePosition(string xpath, int linePosition)
        {
            // Arrange
            var factory          = new SearchResultFactory(_activeDocument);
            var evaluationResult = XElement.Parse(Xml, LoadOptions.SetLineInfo).XPathEvaluate(xpath);

            // Act
            var result = factory.Parse(evaluationResult).Single();

            // Assert
            Assert.That(result.LinePosition, Is.EqualTo(linePosition));
        }
Esempio n. 10
0
        public void SetsSelectionLength(string xpath, int expectedLength)
        {
            // Arrange
            var factory          = new SearchResultFactory(_activeDocument);
            var evaluationResult = XElement.Parse(Xml, LoadOptions.SetLineInfo).XPathEvaluate(xpath);

            // Act
            var result = factory.Parse(evaluationResult).Single();

            // Assert
            Assert.That(result.SelectionLength, Is.EqualTo(expectedLength));
        }
Esempio n. 11
0
        public void ParsesXPathWhichEvaluatesToElements()
        {
            // Arrange
            var factory          = new SearchResultFactory(_activeDocument);
            var evaluationResult = XElement.Parse(Xml).XPathEvaluate("/child");

            // Act
            var results = factory.Parse(evaluationResult);

            // Assert
            Assert.That(results, Is.Not.Null.And.Not.Empty);
        }
Esempio n. 12
0
        public async Task <SearchResult <IList <TvShow> > > TvShowAsync(string query, string language = null, int page = 1, int?firstAirDateYear = null)
        {
            var queryString = CreateQueryString();

            queryString.Add("query", query);
            queryString.Add("language", language);
            queryString.Add("page", page.ToString());
            queryString.Add("first_air_date_year", firstAirDateYear.ToString());

            var searchResultDTO = await GetSearchResultAsync("search/tv", queryString);

            return(SearchResultFactory.CreateList <TvShow>(searchResultDTO));
        }
Esempio n. 13
0
        public async Task <SearchResult <MultiSearch> > MultiSearchAsync(string query, string language = null, int page = 1, bool includeAdult = true, string region = null)
        {
            var queryString = CreateQueryString();

            queryString.Add("query", query);
            queryString.Add("language", language);
            queryString.Add("page", page.ToString());
            queryString.Add("include_adult", includeAdult.ToString());
            queryString.Add("region", region);

            var searchResultDTO = await GetSearchResultAsync("search/multi", queryString);

            return(SearchResultFactory.CreateMultiSearch(searchResultDTO));
        }
Esempio n. 14
0
        public async Task <SearchResult <IList <Movie> > > MovieAsync(string query, string language = null, int page = 1, bool includeAdult = true, string region = null, int?year = null, int?primaryReleaseYear = null)
        {
            var queryString = CreateQueryString();

            queryString.Add("query", query);
            queryString.Add("page", page.ToString());
            queryString.Add("includeAdult", includeAdult.ToString());
            queryString.Add("region", region);
            queryString.Add("language", language);

            var searchResultDTO = await GetSearchResultAsync("search/movie", queryString);

            return(SearchResultFactory.CreateList <Movie>(searchResultDTO));
        }
Esempio n. 15
0
        public void ParsesXPathWhichEvaluatesToAttribute()
        {
            // Arrange
            var factory                 = new SearchResultFactory(_activeDocument);
            var evaluationResult        = XElement.Parse(Xml).XPathEvaluate("/child/@name");
            var expectedAttributeValues = new[]
            {
                "name=\"first\"",
                "name=\"second\""
            };
            // Act
            var results = factory.Parse(evaluationResult).Select(s => s.Value).ToArray();

            // Assert
            Assert.That(results, Is.EquivalentTo(expectedAttributeValues));
        }
Esempio n. 16
0
        public void ParsesXPathWhichEvaluatesToString()
        {
            // Arrange
            var factory            = new SearchResultFactory(_activeDocument);
            var evaluationResult   = XElement.Parse(Xml).XPathEvaluate("/child/text()");
            var expectedTextValues = new[]
            {
                "Hello World!",
                "Guten Morgen Welt!"
            };

            // Act
            var results = factory.Parse(evaluationResult).Select(s => s.Value).ToArray();

            // Assert
            Assert.That(results, Is.EqualTo(expectedTextValues));
        }
Esempio n. 17
0
        public void When_user_exist_in_db_user_is_not_locked_ad_auth_then_auth_is_valid()
        {
            var user = new WmsUser
            {
                Login              = "******",
                UserPassword       = "******",
                UserLocked         = false,
                UserAuthentication = true
            };

            var factory = GetSessionFactoryMock();

            using (ShimsContext.Create())
            {
                ShimLinqExtensionMethods.QueryOf1ISession(s => new[] { user }.AsQueryable());

                ShimConfigurationManager.AppSettingsGet = () =>
                {
                    var nameValueCollection = new NameValueCollection
                    {
                        { "AdPath", "AD" }
                    };
                    return(nameValueCollection);
                };

                ShimDirectorySearcher.ConstructorDirectoryEntryString = (@this, dentry, filter) =>
                {
                    var dirSearcher = new ShimDirectorySearcher(@this)
                    {
                        FindOne = () => SearchResultFactory.Construct(new
                        {
                            name = "testUser"
                        })
                    };
                };

                string userName;

                var authService = new AuthService(factory.Object, new SvcWmsEnvironmentInfoProvider());
                var res         = authService.Authenticate(user.Login, user.UserPassword, out userName);
                res.Should().BeTrue();
            }
        }
Esempio n. 18
0
        private static void RegisterDefaultServices(ServiceContainer serviceContainer)
        {
            var xmlRepository = new XmlRepository();

            serviceContainer.Set(xmlRepository);

            var activeDocument = new ActiveDocument();

            serviceContainer.Set(activeDocument);

            var writerFactory = new XPathWriterFactory(GetCurrentConfiguration);

            serviceContainer.Set(writerFactory);

            var searchResultFactory = new SearchResultFactory(activeDocument);

            serviceContainer.Set(searchResultFactory);

            ThreadHelper.ThrowIfNotOnUIThread();
            var statusbarService = (IVsStatusbar)Package.GetGlobalService(typeof(IVsStatusbar));

            serviceContainer.Set(new StatusbarAdapter(xmlRepository, GetCurrentStatusbarXPathWriter, statusbarService));
        }
 private IEnumerable <ISearchResult> CreateSearchResults <T>(SearchResults <T> results) where T : SearchResultItem
 {
     return(results.Hits.Select(h => SearchResultFactory.Create(h.Document)).Where(x => x != null).ToList());
 }
 private IEnumerable <ISearchResult> CreateSearchResults(SearchResults <SearchResultItem> results)
 {
     return(results.Hits.Select(h => SearchResultFactory.Create(h.Document)).ToArray());
 }
 public ItemSearch(SearchResultFactory searchResultFactory, ILogService log)
 {
     _searchResultFactory = searchResultFactory;
     _log = log;
 }