예제 #1
0
        public void TestSearchInCacheMatch()
        {
            var user = 1;
            var query = "text:a";
            var results = new List<string>() { "1", "2" };

            var queryCache = new QueryCache();
            queryCache.Add(user, query, results);
            var res = queryCache.SearchInCache(user, query);

            Assert.AreEqual(results, res);
            Assert.AreNotEqual(results, new List<string>() {"3", "4"});
        }
예제 #2
0
        public void TestSearchInCacheNotMatch()
        {
            var user = 1;
            var query1 = "text:a";
            var query2 = "text:b";
            var results = new List<string>() { "1", "2" };

            var queryCache = new QueryCache();
            queryCache.Add(user, query1, results);

            var res = queryCache.SearchInCache(user, query2);

            Assert.IsNull(res);
        }
예제 #3
0
        public void TestDeleteOldQueries()
        {
            var user = 1;
            var queries = new List<string>() { "text:a", "text:b", "text:c", "text:d" };
            var results = new List<string>() { "1", "2" };

            var queryCache = new QueryCache() { LIMIT = 3, VALID_TIME_SECONDS = 5 };
            foreach (var query in queries)
            {
                queryCache.Add(user, query, results);
                Thread.Sleep(500);
            }
            Assert.IsNull(queryCache.SearchInCache(user, "text:a"));
            var res = queryCache.SearchInCache(user, "text:b");
            Assert.IsNotNull(res);
            Assert.AreEqual(results, res);
        }
 public NivelDocumentalSearcher(string orderBy, string defaultField, Cache.QueryCache c)
     : base(FSDirectory.Open(Util.NivelDocumentalPath), orderBy, defaultField, new InstancePerFieldAnalyzerWrapper().instancePerFieldAnalyzerWrapper)
 {
     this.queryCacher = c;
 }
예제 #5
0
 public NivelDocumentalSearcher(string orderBy, string defaultField, Cache.QueryCache c)
     : base(FSDirectory.Open(Util.NivelDocumentalPath), orderBy, defaultField, new InstancePerFieldAnalyzerWrapper().instancePerFieldAnalyzerWrapper) {
    this.queryCacher = c;
 }