Exemplo n.º 1
0
        public void TestRenameFolderIndexes()
        {
            using var indexBuilder = new CodeIndexBuilder("ABC", new LucenePoolLight(TempCodeIndexDir), new LucenePoolLight(TempHintIndexDir), Log);

            var oldPath = Path.Combine(MonitorFolder, "ABC");

            Directory.CreateDirectory(oldPath);
            var newPath     = Path.Combine(MonitorFolder, "EFG");
            var oldFileName = Path.Combine(oldPath, "A.txt");
            var newFileName = Path.Combine(newPath, "A.txt");

            File.AppendAllText(oldFileName, "ABCD EEEE");
            Assert.AreEqual(IndexBuildResults.Successful, indexBuilder.CreateIndex(new FileInfo(oldFileName)));
            Assert.AreEqual(oldFileName, indexBuilder.CodeIndexPool.SearchCode(new MatchAllDocsQuery()).First().FilePath);

            Directory.Move(oldPath, newPath);
            Assert.IsTrue(indexBuilder.RenameFolderIndexes(oldPath, newPath, CancellationToken.None));
            Assert.AreEqual(newFileName, indexBuilder.CodeIndexPool.SearchCode(new MatchAllDocsQuery()).First().FilePath);

            var results = indexBuilder.CodeIndexPool.SearchCode(new PrefixQuery(indexBuilder.GetNoneTokenizeFieldTerm(nameof(CodeSource.FilePath), newPath)));

            Assert.AreEqual(1, results.Length);
            Assert.AreEqual(newFileName, results[0].FilePath);
            Assert.AreEqual("ABCD EEEE", results[0].Content);
        }
Exemplo n.º 2
0
        public void TestGetNoneTokenizeFieldTerm()
        {
            using var indexBuilder = new CodeIndexBuilder("ABC", new LucenePoolLight(TempCodeIndexDir), new LucenePoolLight(TempHintIndexDir), Log);

            var term = indexBuilder.GetNoneTokenizeFieldTerm("ABC", "Value");

            Assert.AreEqual("ABC" + Constants.NoneTokenizeFieldSuffix, term.Field);
            Assert.AreEqual("Value", term.Text());
        }