From 889e695280f9b82cc31aeb5e8a28b60f8cd6c260 Mon Sep 17 00:00:00 2001 From: James Moger <james.moger@gitblit.com> Date: Sat, 13 Jul 2013 13:10:04 -0400 Subject: [PATCH] Adjust unit test to confirm null permission fix (issue-259) --- src/test/java/com/gitblit/tests/PermissionsTest.java | 256 ++++++++++++++++++++++++++++++++++++++++++++++++++- 1 files changed, 251 insertions(+), 5 deletions(-) diff --git a/src/test/java/com/gitblit/tests/PermissionsTest.java b/src/test/java/com/gitblit/tests/PermissionsTest.java index 5a95104..12225e4 100644 --- a/src/test/java/com/gitblit/tests/PermissionsTest.java +++ b/src/test/java/com/gitblit/tests/PermissionsTest.java @@ -17,8 +17,7 @@ import java.util.Date; -import junit.framework.Assert; - +import org.junit.Assert; import org.junit.Test; import com.gitblit.Constants.AccessPermission; @@ -57,6 +56,8 @@ assertTrue("admin CAN NOT delete ref!", user.canDeleteRef(repository)); assertTrue("admin CAN NOT rewind ref!", user.canRewindRef(repository)); + assertEquals("admin has wrong permission!", AccessPermission.REWIND, user.getRepositoryPermission(repository).permission); + assertTrue("admin CAN NOT fork!", user.canFork(repository)); assertTrue("admin CAN NOT delete!", user.canDelete(repository)); @@ -74,7 +75,7 @@ repository.accessRestriction = AccessRestrictionType.NONE; UserModel user = UserModel.ANONYMOUS; - + // all permissions, except fork assertTrue("anonymous CAN NOT view!", user.canView(repository)); assertTrue("anonymous CAN NOT clone!", user.canClone(repository)); @@ -83,6 +84,8 @@ assertTrue("anonymous CAN NOT create ref!", user.canCreateRef(repository)); assertTrue("anonymous CAN NOT delete ref!", user.canDeleteRef(repository)); assertTrue("anonymous CAN NOT rewind ref!", user.canRewindRef(repository)); + + assertEquals("anonymous has wrong permission!", AccessPermission.REWIND, user.getRepositoryPermission(repository).permission); repository.allowForks = false; assertFalse("anonymous CAN fork!", user.canFork(repository)); @@ -109,6 +112,8 @@ assertFalse("anonymous CAN delete ref!", user.canDeleteRef(repository)); assertFalse("anonymous CAN rewind ref!", user.canRewindRef(repository)); + assertEquals("anonymous has wrong permission!", AccessPermission.CLONE, user.getRepositoryPermission(repository).permission); + repository.allowForks = false; assertFalse("anonymous CAN fork!", user.canFork(repository)); repository.allowForks = true; @@ -131,6 +136,8 @@ assertFalse("anonymous CAN delete ref!", user.canDeleteRef(repository)); assertFalse("anonymous CAN rewind ref!", user.canRewindRef(repository)); + assertEquals("anonymous has wrong permission!", AccessPermission.VIEW, user.getRepositoryPermission(repository).permission); + repository.allowForks = false; assertFalse("anonymous CAN fork!", user.canFork(repository)); repository.allowForks = true; @@ -152,6 +159,8 @@ assertFalse("anonymous CAN create ref!", user.canCreateRef(repository)); assertFalse("anonymous CAN delete ref!", user.canDeleteRef(repository)); assertFalse("anonymous CAN rewind ref!", user.canRewindRef(repository)); + + assertEquals("anonymous has wrong permission!", AccessPermission.NONE, user.getRepositoryPermission(repository).permission); repository.allowForks = false; assertFalse("anonymous CAN fork!", user.canFork(repository)); @@ -178,6 +187,8 @@ assertTrue("authenticated CAN NOT create ref!", user.canCreateRef(repository)); assertTrue("authenticated CAN NOT delete ref!", user.canDeleteRef(repository)); assertTrue("authenticated CAN NOT rewind ref!", user.canRewindRef(repository)); + + assertEquals("authenticated has wrong permission!", AccessPermission.REWIND, user.getRepositoryPermission(repository).permission); user.canFork = false; repository.allowForks = false; @@ -207,6 +218,8 @@ assertTrue("authenticated CAN NOT delete ref!", user.canDeleteRef(repository)); assertTrue("authenticated CAN NOT rewind ref!", user.canRewindRef(repository)); + assertEquals("authenticated has wrong permission!", AccessPermission.REWIND, user.getRepositoryPermission(repository).permission); + user.canFork = false; repository.allowForks = false; assertFalse("authenticated CAN fork!", user.canFork(repository)); @@ -232,6 +245,8 @@ assertTrue("authenticated CAN NOT delete ref!", user.canDeleteRef(repository)); assertTrue("authenticated CAN NOT rewind ref!", user.canRewindRef(repository)); + assertEquals("authenticated has wrong permission!", AccessPermission.REWIND, user.getRepositoryPermission(repository).permission); + user.canFork = false; repository.allowForks = false; assertFalse("authenticated CAN fork!", user.canFork(repository)); @@ -256,6 +271,8 @@ assertTrue("authenticated CAN NOT create ref!", user.canCreateRef(repository)); assertTrue("authenticated CAN NOT delete ref!", user.canDeleteRef(repository)); assertTrue("authenticated CAN NOT rewind ref!", user.canRewindRef(repository)); + + assertEquals("authenticated has wrong permission!", AccessPermission.REWIND, user.getRepositoryPermission(repository).permission); user.canFork = false; repository.allowForks = false; @@ -285,6 +302,8 @@ assertTrue("named CAN NOT delete ref!", user.canDeleteRef(repository)); assertTrue("named CAN NOT rewind ref!", user.canRewindRef(repository)); + assertEquals("named has wrong permission!", AccessPermission.REWIND, user.getRepositoryPermission(repository).permission); + repository.allowForks = false; user.canFork = false; assertFalse("named CAN fork!", user.canFork(repository)); @@ -316,6 +335,8 @@ assertFalse("named CAN delete ref!", user.canDeleteRef(repository)); assertFalse("named CAN rewind ref!", user.canRewindRef(repository)); + assertEquals("named has wrong permission!", AccessPermission.CLONE, user.getRepositoryPermission(repository).permission); + repository.allowForks = false; user.canFork = false; assertFalse("named CAN fork!", user.canFork(repository)); @@ -343,6 +364,8 @@ assertFalse("named CAN create ref!", user.canCreateRef(repository)); assertFalse("named CAN delete ref!", user.canDeleteRef(repository)); assertFalse("named CAN rewind ref!", user.canRewindRef(repository)); + + assertEquals("named has wrong permission!", AccessPermission.VIEW, user.getRepositoryPermission(repository).permission); repository.allowForks = false; user.canFork = false; @@ -372,6 +395,8 @@ assertFalse("named CAN delete ref!", user.canDeleteRef(repository)); assertFalse("named CAN rewind ref!", user.canRewindRef(repository)); + assertEquals("named has wrong permission!", AccessPermission.NONE, user.getRepositoryPermission(repository).permission); + repository.allowForks = false; user.canFork = false; assertFalse("named CAN fork!", user.canFork(repository)); @@ -402,7 +427,9 @@ assertTrue("named CAN NOT create ref!", user.canCreateRef(repository)); assertTrue("named CAN NOT delete ref!", user.canDeleteRef(repository)); assertTrue("named CAN NOT rewind ref!", user.canRewindRef(repository)); - + + assertEquals("named has wrong permission!", AccessPermission.REWIND, user.getRepositoryPermission(repository).permission); + repository.allowForks = false; user.canFork = false; assertFalse("named CAN fork!", user.canFork(repository)); @@ -431,6 +458,8 @@ assertFalse("named CAN create ref!", user.canCreateRef(repository)); assertFalse("named CAN delete ref!", user.canDeleteRef(repository)); assertFalse("named CAN rewind ref!", user.canRewindRef(repository)); + + assertEquals("named has wrong permission!", AccessPermission.CLONE, user.getRepositoryPermission(repository).permission); repository.allowForks = false; user.canFork = false; @@ -461,6 +490,8 @@ assertFalse("named CAN delete ref!", user.canDeleteRef(repository)); assertFalse("named CAN rewind ref!", user.canRewindRef(repository)); + assertEquals("named has wrong permission!", AccessPermission.VIEW, user.getRepositoryPermission(repository).permission); + repository.allowForks = false; user.canFork = false; assertFalse("named CAN fork!", user.canFork(repository)); @@ -490,6 +521,8 @@ assertFalse("named CAN delete ref!", user.canDeleteRef(repository)); assertFalse("named CAN rewind ref!", user.canRewindRef(repository)); + assertEquals("named has wrong permission!", AccessPermission.VIEW, user.getRepositoryPermission(repository).permission); + repository.allowForks = false; user.canFork = false; assertFalse("named CAN fork!", user.canFork(repository)); @@ -520,6 +553,8 @@ assertTrue("named CAN NOT delete ref!", user.canDeleteRef(repository)); assertTrue("named CAN NOT rewind ref!", user.canRewindRef(repository)); + assertEquals("named has wrong permission!", AccessPermission.REWIND, user.getRepositoryPermission(repository).permission); + repository.allowForks = false; user.canFork = false; assertFalse("named CAN fork!", user.canFork(repository)); @@ -533,7 +568,7 @@ * PUSH_CLONE = PUSH access restriction, CLONE access permission */ @Test - public void testNamed_PUSH_READ() throws Exception { + public void testNamed_PUSH_CLONE() throws Exception { RepositoryModel repository = new RepositoryModel("myrepo.git", null, null, new Date()); repository.authorizationControl = AuthorizationControl.NAMED; repository.accessRestriction = AccessRestrictionType.PUSH; @@ -548,6 +583,8 @@ assertFalse("named CAN create ref!", user.canCreateRef(repository)); assertFalse("named CAN delete ref!", user.canDeleteRef(repository)); assertFalse("named CAN rewind ref!", user.canRewindRef(repository)); + + assertEquals("named has wrong permission!", AccessPermission.CLONE, user.getRepositoryPermission(repository).permission); repository.allowForks = false; user.canFork = false; @@ -578,6 +615,8 @@ assertFalse("named CAN delete ref!", user.canDeleteRef(repository)); assertFalse("named CAN rewind ref!", user.canRewindRef(repository)); + assertEquals("named has wrong permission!", AccessPermission.CLONE, user.getRepositoryPermission(repository).permission); + repository.allowForks = false; user.canFork = false; assertFalse("named CAN fork!", user.canFork(repository)); @@ -607,6 +646,8 @@ assertFalse("named CAN delete ref!", user.canDeleteRef(repository)); assertFalse("named CAN rewind ref!", user.canRewindRef(repository)); + assertEquals("named has wrong permission!", AccessPermission.CLONE, user.getRepositoryPermission(repository).permission); + repository.allowForks = false; user.canFork = false; assertFalse("named CAN fork!", user.canFork(repository)); @@ -637,6 +678,8 @@ assertTrue("named CAN NOT delete ref!", user.canDeleteRef(repository)); assertTrue("named CAN NOT rewind ref!", user.canRewindRef(repository)); + assertEquals("named has wrong permission!", AccessPermission.REWIND, user.getRepositoryPermission(repository).permission); + repository.allowForks = false; user.canFork = false; assertFalse("named CAN fork!", user.canFork(repository)); @@ -665,6 +708,8 @@ assertFalse("named CAN create ref!", user.canCreateRef(repository)); assertFalse("named CAN delete ref!", user.canDeleteRef(repository)); assertFalse("named CAN rewind ref!", user.canRewindRef(repository)); + + assertEquals("named has wrong permission!", AccessPermission.PUSH, user.getRepositoryPermission(repository).permission); repository.allowForks = false; user.canFork = false; @@ -695,6 +740,8 @@ assertFalse("named CAN delete red!", user.canDeleteRef(repository)); assertFalse("named CAN rewind ref!", user.canRewindRef(repository)); + assertEquals("named has wrong permission!", AccessPermission.PUSH, user.getRepositoryPermission(repository).permission); + repository.allowForks = false; user.canFork = false; assertFalse("named CAN fork!", user.canFork(repository)); @@ -724,6 +771,8 @@ assertFalse("named CAN delete ref!", user.canDeleteRef(repository)); assertFalse("named CAN rewind ref!", user.canRewindRef(repository)); + assertEquals("named has wrong permission!", AccessPermission.PUSH, user.getRepositoryPermission(repository).permission); + repository.allowForks = false; user.canFork = false; assertFalse("named CAN fork!", user.canFork(repository)); @@ -754,6 +803,8 @@ assertTrue("named CAN NOT delete ref!", user.canDeleteRef(repository)); assertTrue("named CAN NOT rewind ref!", user.canRewindRef(repository)); + assertEquals("named has wrong permission!", AccessPermission.REWIND, user.getRepositoryPermission(repository).permission); + repository.allowForks = false; user.canFork = false; assertFalse("named CAN fork!", user.canFork(repository)); @@ -782,6 +833,8 @@ assertTrue("named CAN NOT create ref!", user.canCreateRef(repository)); assertFalse("named CAN delete ref!", user.canDeleteRef(repository)); assertFalse("named CAN rewind ref!", user.canRewindRef(repository)); + + assertEquals("named has wrong permission!", AccessPermission.CREATE, user.getRepositoryPermission(repository).permission); repository.allowForks = false; user.canFork = false; @@ -812,6 +865,8 @@ assertFalse("named CAN delete red!", user.canDeleteRef(repository)); assertFalse("named CAN rewind ref!", user.canRewindRef(repository)); + assertEquals("named has wrong permission!", AccessPermission.CREATE, user.getRepositoryPermission(repository).permission); + repository.allowForks = false; user.canFork = false; assertFalse("named CAN fork!", user.canFork(repository)); @@ -841,6 +896,8 @@ assertFalse("named CAN delete ref!", user.canDeleteRef(repository)); assertFalse("named CAN rewind ref!", user.canRewindRef(repository)); + assertEquals("named has wrong permission!", AccessPermission.CREATE, user.getRepositoryPermission(repository).permission); + repository.allowForks = false; user.canFork = false; assertFalse("named CAN fork!", user.canFork(repository)); @@ -871,6 +928,8 @@ assertTrue("named CAN NOT delete ref!", user.canDeleteRef(repository)); assertTrue("named CAN NOT rewind ref!", user.canRewindRef(repository)); + assertEquals("named has wrong permission!", AccessPermission.REWIND, user.getRepositoryPermission(repository).permission); + repository.allowForks = false; user.canFork = false; assertFalse("named CAN fork!", user.canFork(repository)); @@ -899,6 +958,8 @@ assertTrue("named CAN NOT create ref!", user.canCreateRef(repository)); assertTrue("named CAN NOT delete ref!", user.canDeleteRef(repository)); assertFalse("named CAN rewind ref!", user.canRewindRef(repository)); + + assertEquals("named has wrong permission!", AccessPermission.DELETE, user.getRepositoryPermission(repository).permission); repository.allowForks = false; user.canFork = false; @@ -929,6 +990,8 @@ assertTrue("named CAN NOT delete red!", user.canDeleteRef(repository)); assertFalse("named CAN rewind ref!", user.canRewindRef(repository)); + assertEquals("named has wrong permission!", AccessPermission.DELETE, user.getRepositoryPermission(repository).permission); + repository.allowForks = false; user.canFork = false; assertFalse("named CAN fork!", user.canFork(repository)); @@ -958,6 +1021,8 @@ assertTrue("named CAN NOT delete ref!", user.canDeleteRef(repository)); assertFalse("named CAN rewind ref!", user.canRewindRef(repository)); + assertEquals("named has wrong permission!", AccessPermission.DELETE, user.getRepositoryPermission(repository).permission); + repository.allowForks = false; user.canFork = false; assertFalse("named CAN fork!", user.canFork(repository)); @@ -988,6 +1053,8 @@ assertTrue("named CAN NOT delete ref!", user.canDeleteRef(repository)); assertTrue("named CAN NOT rewind ref!", user.canRewindRef(repository)); + assertEquals("named has wrong permission!", AccessPermission.REWIND, user.getRepositoryPermission(repository).permission); + repository.allowForks = false; user.canFork = false; assertFalse("named CAN fork!", user.canFork(repository)); @@ -1016,6 +1083,8 @@ assertTrue("named CAN NOT create ref!", user.canCreateRef(repository)); assertTrue("named CAN NOT delete ref!", user.canDeleteRef(repository)); assertTrue("named CAN NOT rewind ref!", user.canRewindRef(repository)); + + assertEquals("named has wrong permission!", AccessPermission.REWIND, user.getRepositoryPermission(repository).permission); repository.allowForks = false; user.canFork = false; @@ -1046,6 +1115,8 @@ assertTrue("named CAN NOT delete ref!", user.canDeleteRef(repository)); assertTrue("named CAN NOT rewind ref!", user.canRewindRef(repository)); + assertEquals("named has wrong permission!", AccessPermission.REWIND, user.getRepositoryPermission(repository).permission); + repository.allowForks = false; user.canFork = false; assertFalse("named CAN fork!", user.canFork(repository)); @@ -1075,6 +1146,8 @@ assertTrue("named CAN NOT delete ref!", user.canDeleteRef(repository)); assertTrue("named CAN NOT rewind ref!", user.canRewindRef(repository)); + assertEquals("named has wrong permission!", AccessPermission.REWIND, user.getRepositoryPermission(repository).permission); + repository.allowForks = false; user.canFork = false; assertFalse("named CAN fork!", user.canFork(repository)); @@ -1102,6 +1175,9 @@ assertTrue("team CAN NOT create ref!", team.canCreateRef(repository)); assertTrue("team CAN NOT delete ref!", team.canDeleteRef(repository)); assertTrue("team CAN NOT rewind ref!", team.canRewindRef(repository)); + + assertEquals("team has wrong permission!", AccessPermission.REWIND, team.getRepositoryPermission(repository).permission); + } /** @@ -1122,6 +1198,9 @@ assertFalse("team CAN create ref!", team.canCreateRef(repository)); assertFalse("team CAN delete ref!", team.canDeleteRef(repository)); assertFalse("team CAN rewind ref!", team.canRewindRef(repository)); + + assertEquals("team has wrong permission!", AccessPermission.CLONE, team.getRepositoryPermission(repository).permission); + } /** @@ -1142,6 +1221,8 @@ assertFalse("team CAN create ref!", team.canCreateRef(repository)); assertFalse("team CAN delete ref!", team.canDeleteRef(repository)); assertFalse("team CAN rewind ref!", team.canRewindRef(repository)); + + assertEquals("team has wrong permission!", AccessPermission.VIEW, team.getRepositoryPermission(repository).permission); } /** @@ -1162,6 +1243,8 @@ assertFalse("team CAN create ref!", team.canCreateRef(repository)); assertFalse("team CAN delete ref!", team.canDeleteRef(repository)); assertFalse("team CAN rewind ref!", team.canRewindRef(repository)); + + assertEquals("team has wrong permission!", AccessPermission.NONE, team.getRepositoryPermission(repository).permission); } /** @@ -1184,6 +1267,8 @@ assertTrue("team CAN NOT create ref!", team.canCreateRef(repository)); assertTrue("team CAN NOT delete ref!", team.canDeleteRef(repository)); assertTrue("team CAN NOT rewind ref!", team.canRewindRef(repository)); + + assertEquals("team has wrong permission!", AccessPermission.REWIND, team.getRepositoryPermission(repository).permission); } /** @@ -1205,6 +1290,8 @@ assertFalse("team CAN create ref!", team.canCreateRef(repository)); assertFalse("team CAN delete ref!", team.canDeleteRef(repository)); assertFalse("team CAN rewind ref!", team.canRewindRef(repository)); + + assertEquals("team has wrong permission!", AccessPermission.PUSH, team.getRepositoryPermission(repository).permission); } /** @@ -1226,6 +1313,8 @@ assertFalse("team CAN create ref!", team.canCreateRef(repository)); assertFalse("team CAN delete ref!", team.canDeleteRef(repository)); assertFalse("team CAN rewind ref!", team.canRewindRef(repository)); + + assertEquals("team has wrong permission!", AccessPermission.PUSH, team.getRepositoryPermission(repository).permission); } /** @@ -1247,6 +1336,8 @@ assertFalse("team CAN create ref!", team.canCreateRef(repository)); assertFalse("team CAN delete ref!", team.canDeleteRef(repository)); assertFalse("team CAN rewind ref!", team.canRewindRef(repository)); + + assertEquals("team has wrong permission!", AccessPermission.PUSH, team.getRepositoryPermission(repository).permission); } /** @@ -1269,6 +1360,8 @@ assertTrue("team CAN NOT create ref!", team.canCreateRef(repository)); assertTrue("team CAN NOT delete ref!", team.canDeleteRef(repository)); assertTrue("team CAN NOT rewind ref!", team.canRewindRef(repository)); + + assertEquals("team has wrong permission!", AccessPermission.REWIND, team.getRepositoryPermission(repository).permission); } /** @@ -1290,6 +1383,8 @@ assertTrue("team CAN NOT create ref!", team.canCreateRef(repository)); assertFalse("team CAN delete ref!", team.canDeleteRef(repository)); assertFalse("team CAN rewind ref!", team.canRewindRef(repository)); + + assertEquals("team has wrong permission!", AccessPermission.CREATE, team.getRepositoryPermission(repository).permission); } /** @@ -1311,6 +1406,8 @@ assertTrue("team CAN NOT create ref!", team.canCreateRef(repository)); assertFalse("team CAN delete ref!", team.canDeleteRef(repository)); assertFalse("team CAN rewind ref!", team.canRewindRef(repository)); + + assertEquals("team has wrong permission!", AccessPermission.CREATE, team.getRepositoryPermission(repository).permission); } /** @@ -1332,6 +1429,8 @@ assertTrue("team CAN NOT create ref!", team.canCreateRef(repository)); assertFalse("team CAN delete ref!", team.canDeleteRef(repository)); assertFalse("team CAN rewind ref!", team.canRewindRef(repository)); + + assertEquals("team has wrong permission!", AccessPermission.CREATE, team.getRepositoryPermission(repository).permission); } /** @@ -1354,6 +1453,8 @@ assertTrue("team CAN NOT create ref!", team.canCreateRef(repository)); assertTrue("team CAN NOT delete ref!", team.canDeleteRef(repository)); assertTrue("team CAN NOT rewind ref!", team.canRewindRef(repository)); + + assertEquals("team has wrong permission!", AccessPermission.REWIND, team.getRepositoryPermission(repository).permission); } /** @@ -1375,6 +1476,8 @@ assertTrue("team CAN NOT create ref!", team.canCreateRef(repository)); assertTrue("team CAN NOT delete ref!", team.canDeleteRef(repository)); assertFalse("team CAN rewind ref!", team.canRewindRef(repository)); + + assertEquals("team has wrong permission!", AccessPermission.DELETE, team.getRepositoryPermission(repository).permission); } /** @@ -1396,6 +1499,8 @@ assertTrue("team CAN NOT create ref!", team.canCreateRef(repository)); assertTrue("team CAN NOT delete ref!", team.canDeleteRef(repository)); assertFalse("team CAN rewind ref!", team.canRewindRef(repository)); + + assertEquals("team has wrong permission!", AccessPermission.DELETE, team.getRepositoryPermission(repository).permission); } /** @@ -1417,6 +1522,8 @@ assertTrue("team CAN NOT create ref!", team.canCreateRef(repository)); assertTrue("team CAN NOT delete ref!", team.canDeleteRef(repository)); assertFalse("team CAN rewind ref!", team.canRewindRef(repository)); + + assertEquals("team has wrong permission!", AccessPermission.DELETE, team.getRepositoryPermission(repository).permission); } /** @@ -1439,6 +1546,8 @@ assertTrue("team CAN NOT create ref!", team.canCreateRef(repository)); assertTrue("team CAN NOT delete ref!", team.canDeleteRef(repository)); assertTrue("team CAN NOT rewind ref!", team.canRewindRef(repository)); + + assertEquals("team has wrong permission!", AccessPermission.REWIND, team.getRepositoryPermission(repository).permission); } /** @@ -1460,6 +1569,8 @@ assertTrue("team CAN NOT create ref!", team.canCreateRef(repository)); assertTrue("team CAN NOT delete ref!", team.canDeleteRef(repository)); assertTrue("team CAN NOT rewind ref!", team.canRewindRef(repository)); + + assertEquals("team has wrong permission!", AccessPermission.REWIND, team.getRepositoryPermission(repository).permission); } /** @@ -1481,6 +1592,8 @@ assertTrue("team CAN NOT create ref!", team.canCreateRef(repository)); assertTrue("team CAN NOT delete ref!", team.canDeleteRef(repository)); assertTrue("team CAN NOT rewind ref!", team.canRewindRef(repository)); + + assertEquals("team has wrong permission!", AccessPermission.REWIND, team.getRepositoryPermission(repository).permission); } /** @@ -1502,6 +1615,8 @@ assertTrue("team CAN NOT create ref!", team.canCreateRef(repository)); assertTrue("team CAN NOT delete ref!", team.canDeleteRef(repository)); assertTrue("team CAN NOT rewind ref!", team.canRewindRef(repository)); + + assertEquals("team has wrong permission!", AccessPermission.REWIND, team.getRepositoryPermission(repository).permission); } /** @@ -1524,6 +1639,8 @@ assertTrue("team CAN NOT create ref!", team.canCreateRef(repository)); assertTrue("team CAN NOT delete ref!", team.canDeleteRef(repository)); assertTrue("team CAN NOT rewind ref!", team.canRewindRef(repository)); + + assertEquals("team has wrong permission!", AccessPermission.REWIND, team.getRepositoryPermission(repository).permission); } /** @@ -1545,6 +1662,8 @@ assertFalse("team CAN create ref!", team.canCreateRef(repository)); assertFalse("team CAN delete ref!", team.canDeleteRef(repository)); assertFalse("team CAN rewind ref!", team.canRewindRef(repository)); + + assertEquals("team has wrong permission!", AccessPermission.CLONE, team.getRepositoryPermission(repository).permission); } /** @@ -1566,6 +1685,8 @@ assertFalse("team CAN create ref!", team.canCreateRef(repository)); assertFalse("team CAN delete ref!", team.canDeleteRef(repository)); assertFalse("team CAN rewind ref!", team.canRewindRef(repository)); + + assertEquals("team has wrong permission!", AccessPermission.CLONE, team.getRepositoryPermission(repository).permission); } /** @@ -1587,6 +1708,8 @@ assertFalse("team CAN create ref!", team.canCreateRef(repository)); assertFalse("team CAN delete ref!", team.canDeleteRef(repository)); assertFalse("team CAN rewind ref!", team.canRewindRef(repository)); + + assertEquals("team has wrong permission!", AccessPermission.CLONE, team.getRepositoryPermission(repository).permission); } /** @@ -1609,6 +1732,8 @@ assertTrue("team CAN NOT create ref!", team.canCreateRef(repository)); assertTrue("team CAN NOT delete ref!", team.canDeleteRef(repository)); assertTrue("team CAN NOT rewind ref!", team.canRewindRef(repository)); + + assertEquals("team has wrong permission!", AccessPermission.REWIND, team.getRepositoryPermission(repository).permission); } /** @@ -1630,6 +1755,8 @@ assertFalse("team CAN create ref!", team.canCreateRef(repository)); assertFalse("team CAN delete ref!", team.canDeleteRef(repository)); assertFalse("team CAN rewind ref!", team.canRewindRef(repository)); + + assertEquals("team has wrong permission!", AccessPermission.CLONE, team.getRepositoryPermission(repository).permission); } /** @@ -1651,6 +1778,8 @@ assertFalse("team CAN create ref!", team.canCreateRef(repository)); assertFalse("team CAN delete ref!", team.canDeleteRef(repository)); assertFalse("team CAN rewind ref!", team.canRewindRef(repository)); + + assertEquals("team has wrong permission!", AccessPermission.VIEW, team.getRepositoryPermission(repository).permission); } /** @@ -1672,6 +1801,8 @@ assertFalse("team CAN create ref!", team.canCreateRef(repository)); assertFalse("team CAN delete ref!", team.canDeleteRef(repository)); assertFalse("team CAN rewind ref!", team.canRewindRef(repository)); + + assertEquals("team has wrong permission!", AccessPermission.VIEW, team.getRepositoryPermission(repository).permission); } /** @@ -1694,6 +1825,8 @@ assertTrue("team member CAN NOT create ref!", user.canCreateRef(repository)); assertTrue("team member CAN NOT delete ref!", user.canDeleteRef(repository)); assertTrue("team member CAN NOT rewind ref!", user.canRewindRef(repository)); + + assertEquals("team member has wrong permission!", AccessPermission.REWIND, user.getRepositoryPermission(repository).permission); } /** @@ -1716,6 +1849,8 @@ assertFalse("team member CAN create ref!", user.canCreateRef(repository)); assertFalse("team member CAN delete ref!", user.canDeleteRef(repository)); assertFalse("team member CAN rewind ref!", user.canRewindRef(repository)); + + assertEquals("team member has wrong permission!", AccessPermission.CLONE, user.getRepositoryPermission(repository).permission); } /** @@ -1738,6 +1873,8 @@ assertFalse("team member CAN create ref!", user.canCreateRef(repository)); assertFalse("team member CAN delete ref!", user.canDeleteRef(repository)); assertFalse("team member CAN rewind ref!", user.canRewindRef(repository)); + + assertEquals("team member has wrong permission!", AccessPermission.VIEW, user.getRepositoryPermission(repository).permission); } /** @@ -1760,6 +1897,8 @@ assertFalse("team member CAN create ref!", user.canCreateRef(repository)); assertFalse("team member CAN delete ref!", user.canDeleteRef(repository)); assertFalse("team member CAN rewind ref!", user.canRewindRef(repository)); + + assertEquals("team member has wrong permission!", AccessPermission.NONE, user.getRepositoryPermission(repository).permission); } /** @@ -1784,6 +1923,8 @@ assertTrue("team member CAN NOT create ref!", user.canCreateRef(repository)); assertTrue("team member CAN NOT delete ref!", user.canDeleteRef(repository)); assertTrue("team member CAN NOT rewind ref!", user.canRewindRef(repository)); + + assertEquals("team member has wrong permission!", AccessPermission.REWIND, user.getRepositoryPermission(repository).permission); } /** @@ -1807,6 +1948,8 @@ assertFalse("team member CAN create ref!", user.canCreateRef(repository)); assertFalse("team member CAN delete ref!", user.canDeleteRef(repository)); assertFalse("team member CAN rewind ref!", user.canRewindRef(repository)); + + assertEquals("team member has wrong permission!", AccessPermission.PUSH, user.getRepositoryPermission(repository).permission); } /** @@ -1830,6 +1973,8 @@ assertFalse("team member CAN create ref!", user.canCreateRef(repository)); assertFalse("team member CAN delete ref!", user.canDeleteRef(repository)); assertFalse("team member CAN rewind ref!", user.canRewindRef(repository)); + + assertEquals("team member has wrong permission!", AccessPermission.PUSH, user.getRepositoryPermission(repository).permission); } /** @@ -1853,6 +1998,8 @@ assertFalse("team member CAN create ref!", user.canCreateRef(repository)); assertFalse("team member CAN delete ref!", user.canDeleteRef(repository)); assertFalse("team member CAN rewind ref!", user.canRewindRef(repository)); + + assertEquals("team member has wrong permission!", AccessPermission.PUSH, user.getRepositoryPermission(repository).permission); } /** @@ -1877,6 +2024,8 @@ assertTrue("team member CAN NOT create ref!", user.canCreateRef(repository)); assertTrue("team member CAN NOT delete ref!", user.canDeleteRef(repository)); assertTrue("team member CAN NOT rewind ref!", user.canRewindRef(repository)); + + assertEquals("team member has wrong permission!", AccessPermission.REWIND, user.getRepositoryPermission(repository).permission); } /** @@ -1900,6 +2049,8 @@ assertTrue("team member CAN NOT create ref!", user.canCreateRef(repository)); assertFalse("team member CAN delete ref!", user.canDeleteRef(repository)); assertFalse("team member CAN rewind ref!", user.canRewindRef(repository)); + + assertEquals("team member has wrong permission!", AccessPermission.CREATE, user.getRepositoryPermission(repository).permission); } /** @@ -1923,6 +2074,8 @@ assertTrue("team member CAN NOT create ref!", user.canCreateRef(repository)); assertFalse("team member CAN delete ref!", user.canDeleteRef(repository)); assertFalse("team member CAN rewind ref!", user.canRewindRef(repository)); + + assertEquals("team member has wrong permission!", AccessPermission.CREATE, user.getRepositoryPermission(repository).permission); } /** @@ -1946,6 +2099,8 @@ assertTrue("team member CAN NOT create ref!", user.canCreateRef(repository)); assertFalse("team member CAN delete ref!", user.canDeleteRef(repository)); assertFalse("team member CAN rewind ref!", user.canRewindRef(repository)); + + assertEquals("team member has wrong permission!", AccessPermission.CREATE, user.getRepositoryPermission(repository).permission); } /** @@ -1970,6 +2125,8 @@ assertTrue("team member CAN NOT create ref!", user.canCreateRef(repository)); assertTrue("team member CAN NOT delete ref!", user.canDeleteRef(repository)); assertTrue("team member CAN NOT rewind ref!", user.canRewindRef(repository)); + + assertEquals("team member has wrong permission!", AccessPermission.REWIND, user.getRepositoryPermission(repository).permission); } /** @@ -1993,6 +2150,8 @@ assertTrue("team member CAN NOT create ref!", user.canCreateRef(repository)); assertTrue("team member CAN NOT delete ref!", user.canDeleteRef(repository)); assertFalse("team member CAN rewind ref!", user.canRewindRef(repository)); + + assertEquals("team member has wrong permission!", AccessPermission.DELETE, user.getRepositoryPermission(repository).permission); } /** @@ -2016,6 +2175,8 @@ assertTrue("team member CAN NOT create ref!", user.canCreateRef(repository)); assertTrue("team member CAN NOT delete ref!", user.canDeleteRef(repository)); assertFalse("team member CAN rewind ref!", user.canRewindRef(repository)); + + assertEquals("team member has wrong permission!", AccessPermission.DELETE, user.getRepositoryPermission(repository).permission); } /** @@ -2039,6 +2200,8 @@ assertTrue("team member CAN NOT create ref!", user.canCreateRef(repository)); assertTrue("team member CAN NOT delete ref!", user.canDeleteRef(repository)); assertFalse("team member CAN rewind ref!", user.canRewindRef(repository)); + + assertEquals("team member has wrong permission!", AccessPermission.DELETE, user.getRepositoryPermission(repository).permission); } /** @@ -2063,6 +2226,8 @@ assertTrue("team member CAN NOT create ref!", user.canCreateRef(repository)); assertTrue("team member CAN NOT delete ref!", user.canDeleteRef(repository)); assertTrue("team member CAN NOT rewind ref!", user.canRewindRef(repository)); + + assertEquals("team member has wrong permission!", AccessPermission.REWIND, user.getRepositoryPermission(repository).permission); } /** @@ -2086,6 +2251,8 @@ assertTrue("team member CAN NOT create ref!", user.canCreateRef(repository)); assertTrue("team member CAN NOT delete ref!", user.canDeleteRef(repository)); assertTrue("team member CAN NOT rewind ref!", user.canRewindRef(repository)); + + assertEquals("team member has wrong permission!", AccessPermission.REWIND, user.getRepositoryPermission(repository).permission); } /** @@ -2109,6 +2276,8 @@ assertTrue("team member CAN NOT create ref!", user.canCreateRef(repository)); assertTrue("team member CAN NOT delete ref!", user.canDeleteRef(repository)); assertTrue("team member CAN NOT rewind ref!", user.canRewindRef(repository)); + + assertEquals("team member has wrong permission!", AccessPermission.REWIND, user.getRepositoryPermission(repository).permission); } /** @@ -2132,6 +2301,8 @@ assertTrue("team member CAN NOT create ref!", user.canCreateRef(repository)); assertTrue("team member CAN NOT delete ref!", user.canDeleteRef(repository)); assertTrue("team member CAN NOT rewind ref!", user.canRewindRef(repository)); + + assertEquals("team member has wrong permission!", AccessPermission.REWIND, user.getRepositoryPermission(repository).permission); } /** @@ -2156,6 +2327,8 @@ assertTrue("team member CAN NOT create ref!", user.canCreateRef(repository)); assertTrue("team member CAN NOT delete ref!", user.canDeleteRef(repository)); assertTrue("team member CAN NOT rewind ref!", user.canRewindRef(repository)); + + assertEquals("team member has wrong permission!", AccessPermission.REWIND, user.getRepositoryPermission(repository).permission); } /** @@ -2179,6 +2352,8 @@ assertFalse("team member CAN create ref!", user.canCreateRef(repository)); assertFalse("team member CAN delete ref!", user.canDeleteRef(repository)); assertFalse("team member CAN rewind ref!", user.canRewindRef(repository)); + + assertEquals("team member has wrong permission!", AccessPermission.CLONE, user.getRepositoryPermission(repository).permission); } /** @@ -2202,6 +2377,8 @@ assertFalse("team member CAN create ref!", user.canCreateRef(repository)); assertFalse("team member CAN delete ref!", user.canDeleteRef(repository)); assertFalse("team member CAN rewind ref!", user.canRewindRef(repository)); + + assertEquals("team member has wrong permission!", AccessPermission.CLONE, user.getRepositoryPermission(repository).permission); } /** @@ -2225,6 +2402,8 @@ assertFalse("team member CAN create ref!", user.canCreateRef(repository)); assertFalse("team member CAN delete ref!", user.canDeleteRef(repository)); assertFalse("team member CAN rewind ref!", user.canRewindRef(repository)); + + assertEquals("team member has wrong permission!", AccessPermission.CLONE, user.getRepositoryPermission(repository).permission); } /** @@ -2249,6 +2428,8 @@ assertTrue("team member CAN NOT create ref!", user.canCreateRef(repository)); assertTrue("team member CAN NOT delete ref!", user.canDeleteRef(repository)); assertTrue("team member CAN NOT rewind ref!", user.canRewindRef(repository)); + + assertEquals("team member has wrong permission!", AccessPermission.REWIND, user.getRepositoryPermission(repository).permission); } /** @@ -2272,6 +2453,8 @@ assertFalse("team member CAN create ref!", user.canCreateRef(repository)); assertFalse("team member CAN delete ref!", user.canDeleteRef(repository)); assertFalse("team member CAN rewind ref!", user.canRewindRef(repository)); + + assertEquals("team member has wrong permission!", AccessPermission.CLONE, user.getRepositoryPermission(repository).permission); } /** @@ -2295,6 +2478,8 @@ assertFalse("team member CAN create ref!", user.canCreateRef(repository)); assertFalse("team member CAN delete ref!", user.canDeleteRef(repository)); assertFalse("team member CAN rewind ref!", user.canRewindRef(repository)); + + assertEquals("team member has wrong permission!", AccessPermission.VIEW, user.getRepositoryPermission(repository).permission); } /** @@ -2318,6 +2503,8 @@ assertFalse("team member CAN create ref!", user.canCreateRef(repository)); assertFalse("team member CAN delete ref!", user.canDeleteRef(repository)); assertFalse("team member CAN rewind ref!", user.canRewindRef(repository)); + + assertEquals("team member has wrong permission!", AccessPermission.VIEW, user.getRepositoryPermission(repository).permission); } @Test @@ -2337,6 +2524,8 @@ assertTrue("owner CAN NOT create ref!", user.canCreateRef(repository)); assertTrue("owner CAN NOT delete ref!", user.canDeleteRef(repository)); assertTrue("owner CAN NOT rewind ref!", user.canRewindRef(repository)); + + assertEquals("owner has wrong permission!", AccessPermission.REWIND, user.getRepositoryPermission(repository).permission); assertTrue("owner CAN NOT fork!", user.canFork(repository)); @@ -2365,6 +2554,8 @@ assertTrue("owner CAN NOT delete ref!", user.canDeleteRef(repository)); assertTrue("owner CAN NOT rewind ref!", user.canRewindRef(repository)); + assertEquals("owner has wrong permission!", AccessPermission.REWIND, user.getRepositoryPermission(repository).permission); + assertTrue("owner CAN NOT fork!", user.canFork(repository)); assertFalse("owner CAN NOT delete!", user.canDelete(repository)); @@ -2379,6 +2570,8 @@ assertTrue("owner CAN NOT create ref!", user2.canCreateRef(repository)); assertTrue("owner CAN NOT delete ref!", user2.canDeleteRef(repository)); assertTrue("owner CAN NOT rewind ref!", user2.canRewindRef(repository)); + + assertEquals("owner has wrong permission!", AccessPermission.REWIND, user2.getRepositoryPermission(repository).permission); assertTrue("owner CAN NOT fork!", user2.canFork(repository)); @@ -2407,6 +2600,8 @@ assertTrue("user CAN NOT delete ref!", user.canDeleteRef(repository)); assertTrue("user CAN NOT rewind ref!", user.canRewindRef(repository)); + assertEquals("user has wrong permission!", AccessPermission.REWIND, user.getRepositoryPermission(repository).permission); + assertFalse("user CAN fork!", user.canFork(repository)); assertTrue("user CAN NOT delete!", user.canDelete(repository)); @@ -2431,6 +2626,8 @@ assertFalse("user CAN delete ref!", user.canDeleteRef(repository)); assertFalse("user CAN rewind ref!", user.canRewindRef(repository)); + assertEquals("user has wrong permission!", AccessPermission.NONE, user.getRepositoryPermission(repository).permission); + assertFalse("user CAN fork!", user.canFork(repository)); assertFalse("user CAN delete!", user.canDelete(repository)); @@ -2454,6 +2651,8 @@ assertFalse("user CAN create ref!", user.canCreateRef(repository)); assertFalse("user CAN delete ref!", user.canDeleteRef(repository)); assertFalse("user CAN rewind ref!", user.canRewindRef(repository)); + + assertEquals("user has wrong permission!", AccessPermission.CLONE, user.getRepositoryPermission(repository).permission); assertFalse("user CAN fork!", user.canFork(repository)); @@ -2481,6 +2680,8 @@ assertFalse("user CAN delete ref!", user.canDeleteRef(common)); assertFalse("user CAN rewind ref!", user.canRewindRef(common)); + assertEquals("user has wrong permission!", AccessPermission.CLONE, user.getRepositoryPermission(common).permission); + assertFalse("user CAN fork!", user.canFork(common)); assertFalse("user CAN delete!", user.canDelete(common)); @@ -2499,6 +2700,8 @@ assertFalse("user CAN create ref!", user.canCreateRef(personal)); assertFalse("user CAN delete ref!", user.canDeleteRef(personal)); assertFalse("user CAN rewind ref!", user.canRewindRef(personal)); + + assertEquals("user has wrong permission!", AccessPermission.NONE, user.getRepositoryPermission(personal).permission); assertFalse("user CAN fork!", user.canFork(personal)); @@ -2528,6 +2731,8 @@ assertFalse("user CAN delete ref!", user.canDeleteRef(personal)); assertFalse("user CAN rewind ref!", user.canRewindRef(personal)); + assertEquals("user has wrong permission!", AccessPermission.CLONE, user.getRepositoryPermission(personal).permission); + assertFalse("user CAN fork!", user.canFork(personal)); assertFalse("user CAN delete!", user.canDelete(personal)); @@ -2554,6 +2759,8 @@ assertFalse("user CAN delete ref!", user.canDeleteRef(personal)); assertFalse("user CAN rewind ref!", user.canRewindRef(personal)); + assertEquals("user has wrong permission!", AccessPermission.PUSH, user.getRepositoryPermission(personal).permission); + assertFalse("user CAN fork!", user.canFork(personal)); assertFalse("user CAN delete!", user.canDelete(personal)); @@ -2572,6 +2779,8 @@ assertFalse("user CAN create ref!", user.canCreateRef(personal)); assertFalse("user CAN delete ref!", user.canDeleteRef(personal)); assertFalse("user CAN rewind ref!", user.canRewindRef(personal)); + + assertEquals("user has wrong permission!", AccessPermission.CLONE, user.getRepositoryPermission(personal).permission); assertFalse("user CAN fork!", user.canFork(personal)); @@ -2598,6 +2807,8 @@ assertFalse("user CAN create ref!", user.canCreateRef(personal)); assertFalse("user CAN delete ref!", user.canDeleteRef(personal)); assertFalse("user CAN rewind ref!", user.canRewindRef(personal)); + + assertEquals("user has wrong permission!", AccessPermission.EXCLUDE, user.getRepositoryPermission(personal).permission); assertFalse("user CAN fork!", user.canFork(personal)); @@ -2632,4 +2843,39 @@ assertTrue("User did not inherit create privileges", user.canCreate()); } + @Test + public void testIsFrozen() throws Exception { + RepositoryModel repo = new RepositoryModel("somerepo.git", null, null, new Date()); + repo.authorizationControl = AuthorizationControl.NAMED; + repo.accessRestriction = AccessRestrictionType.NONE; + + UserModel user = new UserModel("test"); + TeamModel team = new TeamModel("team"); + + assertEquals("user has wrong permission!", AccessPermission.REWIND, user.getRepositoryPermission(repo).permission); + assertEquals("team has wrong permission!", AccessPermission.REWIND, team.getRepositoryPermission(repo).permission); + + // freeze repo + repo.isFrozen = true; + assertEquals("user has wrong permission!", AccessPermission.CLONE, user.getRepositoryPermission(repo).permission); + assertEquals("team has wrong permission!", AccessPermission.CLONE, team.getRepositoryPermission(repo).permission); + } + + @Test + public void testIsBare() throws Exception { + RepositoryModel repo = new RepositoryModel("somerepo.git", null, null, new Date()); + repo.authorizationControl = AuthorizationControl.NAMED; + repo.accessRestriction = AccessRestrictionType.NONE; + + UserModel user = new UserModel("test"); + TeamModel team = new TeamModel("team"); + + assertEquals("user has wrong permission!", AccessPermission.REWIND, user.getRepositoryPermission(repo).permission); + assertEquals("team has wrong permission!", AccessPermission.REWIND, team.getRepositoryPermission(repo).permission); + + // set repo to have a working copy, pushes prohibited + repo.isBare = false; + assertEquals("user has wrong permission!", AccessPermission.CLONE, user.getRepositoryPermission(repo).permission); + assertEquals("team has wrong permission!", AccessPermission.CLONE, team.getRepositoryPermission(repo).permission); + } } -- Gitblit v1.9.1