From 36ee2307ea083cfe8994b13a3023bc779b2b23ec Mon Sep 17 00:00:00 2001
From: James Moger <james.moger@gitblit.com>
Date: Fri, 17 Feb 2012 18:43:40 -0500
Subject: [PATCH] Implemented multi-repository Lucene search
---
tests/com/gitblit/tests/LuceneUtilsTest.java | 27 ++++++++++++++++++---------
1 files changed, 18 insertions(+), 9 deletions(-)
diff --git a/tests/com/gitblit/tests/LuceneUtilsTest.java b/tests/com/gitblit/tests/LuceneUtilsTest.java
index 648c812..a544621 100644
--- a/tests/com/gitblit/tests/LuceneUtilsTest.java
+++ b/tests/com/gitblit/tests/LuceneUtilsTest.java
@@ -57,48 +57,48 @@
public void testQuery() throws Exception {
// 2 occurrences on the master branch
Repository repository = GitBlitSuite.getHelloworldRepository();
- List<SearchResult> results = LuceneUtils.search(repository, "ada");
+ List<SearchResult> results = LuceneUtils.search("ada", 10, repository);
assertEquals(2, results.size());
// author test
- results = LuceneUtils.search(repository, "author: tinogomes");
+ results = LuceneUtils.search("author: tinogomes", 10, repository);
assertEquals(2, results.size());
repository.close();
// blob test
- results = LuceneUtils.search(repository, "type: blob AND \"import std.stdio\"");
+ results = LuceneUtils.search("type: blob AND \"import std.stdio\"", 10, repository);
assertEquals(1, results.size());
assertEquals("d.D", results.get(0).id);
// 1 occurrence on the gh-pages branch
repository = GitBlitSuite.getTheoreticalPhysicsRepository();
- results = LuceneUtils.search(repository, "\"add the .nojekyll file\"");
+ results = LuceneUtils.search("\"add the .nojekyll file\"", 10, repository);
assertEquals(1, results.size());
assertEquals("Ondrej Certik", results.get(0).author);
assertEquals("2648c0c98f2101180715b4d432fc58d0e21a51d7", results.get(0).id);
// tag test
- results = LuceneUtils.search(repository, "\"qft split\"");
+ results = LuceneUtils.search("\"qft split\"", 10, repository);
assertEquals(1, results.size());
assertEquals("Ondrej Certik", results.get(0).author);
assertEquals("57c4f26f157ece24b02f4f10f5f68db1d2ce7ff5", results.get(0).id);
assertEquals("[1st-edition]", results.get(0).labels.toString());
- results = LuceneUtils.search(repository, "type:blob AND \"src/intro.rst\"");
+ results = LuceneUtils.search("type:blob AND \"src/intro.rst\"", 10, repository);
assertEquals(4, results.size());
// hash id tests
- results = LuceneUtils.search(repository, "id:57c4f26f157ece24b02f4f10f5f68db1d2ce7ff5");
+ results = LuceneUtils.search("id:57c4f26f157ece24b02f4f10f5f68db1d2ce7ff5", 10, repository);
assertEquals(1, results.size());
- results = LuceneUtils.search(repository, "id:57c4f26f157*");
+ results = LuceneUtils.search("id:57c4f26f157*", 10, repository);
assertEquals(1, results.size());
repository.close();
// annotated tag test
repository = GitBlitSuite.getBluezGnomeRepository();
- results = LuceneUtils.search(repository, "\"release 1.8\"");
+ results = LuceneUtils.search("\"release 1.8\"", 10, repository);
assertEquals(1, results.size());
assertEquals("[1.8]", results.get(0).labels.toString());
@@ -106,4 +106,13 @@
LuceneUtils.close();
}
+
+ @Test
+ public void testMultiSearch() throws Exception {
+ List<SearchResult> results = LuceneUtils.search("test", 10,
+ GitBlitSuite.getHelloworldRepository(),
+ GitBlitSuite.getBluezGnomeRepository());
+ LuceneUtils.close();
+ assertEquals(10, results.size());
+ }
}
\ No newline at end of file
--
Gitblit v1.9.1