From 27ae9095639bb228a1b7ff86a3ebe4264abf05be Mon Sep 17 00:00:00 2001
From: mschaefers <mschaefers@scoop-gmbh.de>
Date: Thu, 29 Nov 2012 12:33:09 -0500
Subject: [PATCH] feature: when using LdapUserService one can configure Gitblit to fetch all users from ldap that can possibly login. This allows to see newly generated LDAP users instantly in Gitblit. By now an LDAP user had to log in once to appear in GitBlit.
---
tests/com/gitblit/tests/IssuesTest.java | 89 ++++++++++++++++----------------------------
1 files changed, 32 insertions(+), 57 deletions(-)
diff --git a/tests/com/gitblit/tests/IssuesTest.java b/tests/com/gitblit/tests/IssuesTest.java
index a5d487d..54cac33 100644
--- a/tests/com/gitblit/tests/IssuesTest.java
+++ b/tests/com/gitblit/tests/IssuesTest.java
@@ -26,6 +26,7 @@
import org.eclipse.jgit.lib.Repository;
import org.junit.Test;
+import com.gitblit.LuceneExecutor;
import com.gitblit.models.IssueModel;
import com.gitblit.models.IssueModel.Attachment;
import com.gitblit.models.IssueModel.Change;
@@ -33,9 +34,9 @@
import com.gitblit.models.IssueModel.Priority;
import com.gitblit.models.IssueModel.Status;
import com.gitblit.models.SearchResult;
+import com.gitblit.utils.FileUtils;
import com.gitblit.utils.IssueUtils;
import com.gitblit.utils.IssueUtils.IssueFilter;
-import com.gitblit.utils.LuceneUtils;
/**
* Tests the mechanics of distributed issue management on the gb-issues branch.
@@ -46,9 +47,11 @@
public class IssuesTest {
@Test
- public void testCreation() throws Exception {
+ public void testLifecycle() throws Exception {
Repository repository = GitBlitSuite.getIssuesTestRepository();
- // create and insert the issue
+ String name = FileUtils.getRelativePath(GitBlitSuite.REPOSITORIES, repository.getDirectory());
+
+ // create and insert an issue
Change c1 = newChange("testCreation() " + Long.toHexString(System.currentTimeMillis()));
IssueModel issue = IssueUtils.createIssue(repository, c1);
assertNotNull(issue.id);
@@ -58,18 +61,15 @@
compare(issue, constructed);
assertEquals(1, constructed.changes.size());
- }
-
- @Test
- public void testUpdates() throws Exception {
- Repository repository = GitBlitSuite.getIssuesTestRepository();
+
// C1: create the issue
- Change c1 = newChange("testUpdates() " + Long.toHexString(System.currentTimeMillis()));
- IssueModel issue = IssueUtils.createIssue(repository, c1);
+ c1 = newChange("testUpdates() " + Long.toHexString(System.currentTimeMillis()));
+ issue = IssueUtils.createIssue(repository, c1);
assertNotNull(issue.id);
- IssueModel constructed = IssueUtils.getIssue(repository, issue.id);
+ constructed = IssueUtils.getIssue(repository, issue.id);
compare(issue, constructed);
+ assertEquals(1, constructed.changes.size());
// C2: set owner
Change c2 = new Change("C2");
@@ -109,79 +109,54 @@
assertEquals(5, constructed.changes.size());
assertTrue(constructed.status.isClosed());
- repository.close();
- }
-
- @Test
- public void testQuery() throws Exception {
- Repository repository = GitBlitSuite.getIssuesTestRepository();
List<IssueModel> allIssues = IssueUtils.getIssues(repository, null);
-
List<IssueModel> openIssues = IssueUtils.getIssues(repository, new IssueFilter() {
@Override
public boolean accept(IssueModel issue) {
return !issue.status.isClosed();
}
});
-
List<IssueModel> closedIssues = IssueUtils.getIssues(repository, new IssueFilter() {
@Override
public boolean accept(IssueModel issue) {
return issue.status.isClosed();
}
});
-
- repository.close();
+
assertTrue(allIssues.size() > 0);
assertEquals(1, openIssues.size());
assertEquals(1, closedIssues.size());
- }
-
- @Test
- public void testLuceneIndexAndQuery() throws Exception {
- Repository repository = GitBlitSuite.getIssuesTestRepository();
- LuceneUtils.deleteIndex(repository);
- List<IssueModel> allIssues = IssueUtils.getIssues(repository, null);
- assertTrue(allIssues.size() > 0);
- for (IssueModel issue : allIssues) {
- LuceneUtils.index(repository, issue, false);
+
+ // build a new Lucene index
+ LuceneExecutor lucene = new LuceneExecutor(null, GitBlitSuite.REPOSITORIES);
+ lucene.deleteIndex(name);
+ for (IssueModel anIssue : allIssues) {
+ lucene.index(name, anIssue);
}
- List<SearchResult> hits = LuceneUtils.search("working", 10, repository);
- assertTrue(hits.size() > 0);
+ List<SearchResult> hits = lucene.search("working", 1, 10, name);
+ assertTrue(hits.size() == 1);
// reindex an issue
- IssueModel issue = allIssues.get(0);
+ issue = allIssues.get(0);
Change change = new Change("reindex");
change.comment("this is a test of reindexing an issue");
IssueUtils.updateIssue(repository, issue.id, change);
issue = IssueUtils.getIssue(repository, issue.id);
- LuceneUtils.index(repository, issue, true);
+ lucene.index(name, issue);
+
+ hits = lucene.search("working", 1, 10, name);
+ assertTrue(hits.size() == 1);
+
- LuceneUtils.close();
+ // delete all issues
+ for (IssueModel anIssue : allIssues) {
+ assertTrue(IssueUtils.deleteIssue(repository, anIssue.id, "D"));
+ }
+
+ lucene.close();
repository.close();
}
- @Test
- public void testLuceneQuery() throws Exception {
- Repository repository = GitBlitSuite.getIssuesTestRepository();
- List<SearchResult> hits = LuceneUtils.search("working", 10, repository);
- LuceneUtils.close();
- repository.close();
- assertTrue(hits.size() > 0);
- }
-
-
- @Test
- public void testDelete() throws Exception {
- Repository repository = GitBlitSuite.getIssuesTestRepository();
- List<IssueModel> allIssues = IssueUtils.getIssues(repository, null);
- // delete all issues
- for (IssueModel issue : allIssues) {
- assertTrue(IssueUtils.deleteIssue(repository, issue.id, "D"));
- }
- repository.close();
- }
-
@Test
public void testChangeComment() throws Exception {
Repository repository = GitBlitSuite.getIssuesTestRepository();
--
Gitblit v1.9.1