From dcf57518555f7a8874533da047f3efaf7330a90a Mon Sep 17 00:00:00 2001
From: James Moger <james.moger@gitblit.com>
Date: Wed, 21 Dec 2011 21:23:29 -0500
Subject: [PATCH] Unit testing fixes and regression fixes.

---
 tests/com/gitblit/tests/UserServiceTest.java |   22 ++++++++++++++++++----
 tests/com/gitblit/tests/RpcTests.java        |    5 +++++
 tests/com/gitblit/tests/GitServletTest.java  |    2 +-
 3 files changed, 24 insertions(+), 5 deletions(-)

diff --git a/tests/com/gitblit/tests/GitServletTest.java b/tests/com/gitblit/tests/GitServletTest.java
index b3cf41a..f0aedce 100644
--- a/tests/com/gitblit/tests/GitServletTest.java
+++ b/tests/com/gitblit/tests/GitServletTest.java
@@ -83,7 +83,7 @@
 			clone.call();
 			cloned = true;
 		} catch (Exception e) {
-			e.printStackTrace();
+			// swallow the exception which we expect
 		}
 
 		// restore anonymous repository access
diff --git a/tests/com/gitblit/tests/RpcTests.java b/tests/com/gitblit/tests/RpcTests.java
index 123dd97..f85dd79 100644
--- a/tests/com/gitblit/tests/RpcTests.java
+++ b/tests/com/gitblit/tests/RpcTests.java
@@ -352,6 +352,11 @@
 		// restore setting
 		newValue = !newValue;
 		updated.put(Keys.web.showRepositorySizes, String.valueOf(newValue));
+		success = RpcUtils.updateSettings(updated, url, account, password.toCharArray());
+		assertTrue("Failed to update server settings", success);
+		settings = RpcUtils.getSettings(url, account, password.toCharArray());
+		showSizes = settings.get(Keys.web.showRepositorySizes).getBoolean(true);
+		assertEquals(newValue, showSizes);
 	}
 
 	@Test
diff --git a/tests/com/gitblit/tests/UserServiceTest.java b/tests/com/gitblit/tests/UserServiceTest.java
index 93e7f60..b1f0247 100644
--- a/tests/com/gitblit/tests/UserServiceTest.java
+++ b/tests/com/gitblit/tests/UserServiceTest.java
@@ -57,13 +57,19 @@
 		UserModel admin = service.getUserModel("admin");
 		assertTrue(admin == null);
 
-		// add admin
+		// add admin and admins team
+		TeamModel admins = new TeamModel("admins");
+		admins.mailingLists.add("admins@localhost.com");
+		
 		admin = new UserModel("admin");
 		admin.password = "password";
 		admin.canAdmin = true;
 		admin.excludeFromFederation = true;
+		admin.teams.add(admins);
+		
 		service.updateUserModel(admin);
 		admin = null;
+		admins = null;
 
 		// add new user
 		UserModel newUser = new UserModel("test");
@@ -111,8 +117,9 @@
 
 	protected void testTeams(IUserService service) {
 
-		// confirm we have no teams
-		assertEquals(0, service.getAllTeamNames().size());
+		// confirm we have 1 team (admins)
+		assertEquals(1, service.getAllTeamNames().size());
+		assertEquals("admins", service.getAllTeamNames().get(0));
 
 		// remove newrepo1 from test user
 		// now test user has no repositories
@@ -211,6 +218,13 @@
 		// delete both teams
 		service.deleteTeam("testteam");
 		service.deleteTeam("nextteam");
-		assertEquals(0, service.getAllTeamNames().size());
+		
+		// assert we still have the admins team
+		assertEquals(1, service.getAllTeamNames().size());
+		assertEquals("admins", service.getAllTeamNames().get(0));
+		
+		team = service.getTeamModel("admins");
+		assertEquals(1, team.mailingLists.size());
+		assertTrue(team.mailingLists.contains("admins@localhost.com"));
 	}
 }
\ No newline at end of file

--
Gitblit v1.9.1