From efe8ecb216b0e2f2f1dceb26c4f21dcec1fb497c Mon Sep 17 00:00:00 2001 From: James Moger <james.moger@gitblit.com> Date: Fri, 11 Nov 2011 17:59:15 -0500 Subject: [PATCH] Revised user access checks to account for repository ownership. --- tests/com/gitblit/tests/FederationTests.java | 25 +++++++++++-------------- 1 files changed, 11 insertions(+), 14 deletions(-) diff --git a/tests/com/gitblit/tests/FederationTests.java b/tests/com/gitblit/tests/FederationTests.java index 903bd9c..66bb949 100644 --- a/tests/com/gitblit/tests/FederationTests.java +++ b/tests/com/gitblit/tests/FederationTests.java @@ -24,13 +24,14 @@ import junit.framework.TestCase; import com.gitblit.Constants.AccessRestrictionType; +import com.gitblit.Constants.FederationProposalResult; import com.gitblit.Constants.FederationRequest; import com.gitblit.Constants.FederationToken; -import com.gitblit.FederationServlet; import com.gitblit.GitBlitServer; +import com.gitblit.models.FederationProposal; import com.gitblit.models.RepositoryModel; import com.gitblit.utils.FederationUtils; -import com.google.gson.Gson; +import com.gitblit.utils.JsonUtils; public class FederationTests extends TestCase { @@ -63,14 +64,6 @@ Thread.sleep(2500); } - public void testDeserialization() throws Exception { - String json = "{\"https://localhost:8443/git/a.b.c.orphan.git\":{\"name\":\"a.b.c.orphan.git\",\"description\":\"\",\"owner\":\"\",\"lastChange\":\"Jul 22, 2011 3:15:07 PM\",\"hasCommits\":true,\"showRemoteBranches\":false,\"useTickets\":false,\"useDocs\":false,\"accessRestriction\":\"NONE\",\"isFrozen\":false,\"showReadme\":false,\"isFederated\":false},\"https://localhost:8443/git/test/jgit.git\":{\"name\":\"test/jgit.git\",\"description\":\"\",\"owner\":\"\",\"lastChange\":\"Jul 13, 2011 9:42:33 AM\",\"hasCommits\":true,\"showRemoteBranches\":true,\"useTickets\":false,\"useDocs\":false,\"accessRestriction\":\"NONE\",\"isFrozen\":false,\"showReadme\":false,\"isFederated\":false},\"https://localhost:8443/git/test/helloworld.git\":{\"name\":\"test/helloworld.git\",\"description\":\"\",\"owner\":\"\",\"lastChange\":\"Jul 15, 2008 7:26:48 PM\",\"hasCommits\":true,\"showRemoteBranches\":false,\"useTickets\":false,\"useDocs\":false,\"accessRestriction\":\"NONE\",\"isFrozen\":false,\"showReadme\":false,\"isFederated\":false},\"https://localhost:8443/git/working/ticgit\":{\"name\":\"working/ticgit\",\"description\":\"\",\"owner\":\"\",\"lastChange\":\"Jul 22, 2011 10:35:27 AM\",\"hasCommits\":true,\"showRemoteBranches\":false,\"useTickets\":false,\"useDocs\":false,\"accessRestriction\":\"NONE\",\"isFrozen\":false,\"showReadme\":false,\"isFederated\":false},\"https://localhost:8443/git/ticgit.git\":{\"name\":\"ticgit.git\",\"description\":\"\",\"owner\":\"\",\"lastChange\":\"Jul 22, 2011 10:35:27 AM\",\"hasCommits\":true,\"showRemoteBranches\":true,\"useTickets\":true,\"useDocs\":true,\"accessRestriction\":\"NONE\",\"isFrozen\":false,\"showReadme\":false,\"isFederated\":false},\"https://localhost:8443/git/helloworld.git\":{\"name\":\"helloworld.git\",\"description\":\"\",\"owner\":\"\",\"lastChange\":\"Jul 15, 2008 7:26:48 PM\",\"hasCommits\":true,\"showRemoteBranches\":false,\"useTickets\":false,\"useDocs\":false,\"accessRestriction\":\"NONE\",\"isFrozen\":false,\"showReadme\":false,\"isFederated\":false},\"https://localhost:8443/git/test/helloworld3.git\":{\"name\":\"test/helloworld3.git\",\"description\":\"\",\"owner\":\"\",\"lastChange\":\"Jul 15, 2008 7:26:48 PM\",\"hasCommits\":true,\"showRemoteBranches\":false,\"useTickets\":false,\"useDocs\":false,\"accessRestriction\":\"NONE\",\"isFrozen\":false,\"showReadme\":false,\"isFederated\":false},\"https://localhost:8443/git/test/bluez-gnome.git\":{\"name\":\"test/bluez-gnome.git\",\"description\":\"\",\"owner\":\"\",\"lastChange\":\"Dec 19, 2008 6:35:33 AM\",\"hasCommits\":true,\"showRemoteBranches\":false,\"useTickets\":false,\"useDocs\":false,\"accessRestriction\":\"NONE\",\"isFrozen\":false,\"showReadme\":false,\"isFederated\":false}}"; - Gson gson = new Gson(); - Map<String, RepositoryModel> models = gson - .fromJson(json, FederationUtils.REPOSITORIES_TYPE); - assertEquals(8, models.size()); - } - public void testProposal() throws Exception { // create dummy repository data Map<String, RepositoryModel> repositories = new HashMap<String, RepositoryModel>(); @@ -86,16 +79,20 @@ repositories.put(model.name, model); } + FederationProposal proposal = new FederationProposal("http://testurl", FederationToken.ALL, + "testtoken", repositories); + // propose federation - assertTrue("proposal refused", FederationUtils.propose("http://localhost:" + port, - FederationToken.ALL, "testtoken", "http://testurl", repositories)); + assertEquals("proposal refused", + FederationUtils.propose("http://localhost:" + port, proposal), + FederationProposalResult.NO_PROPOSALS); } public void testPullRepositories() throws Exception { try { - String url = FederationServlet.asPullLink("http://localhost:" + port, "testtoken", + String url = FederationUtils.asLink("http://localhost:" + port, "testtoken", FederationRequest.PULL_REPOSITORIES); - String json = FederationUtils.readJson(url); + String json = JsonUtils.retrieveJsonString(url, null, null); } catch (IOException e) { if (!e.getMessage().contains("403")) { throw e; -- Gitblit v1.9.1