From e7e8bd8af341719b7cb902c7861ea198f5db43a6 Mon Sep 17 00:00:00 2001 From: Robbert Noordzij <robbert@xseeding.nl> Date: Tue, 07 Oct 2014 06:14:27 -0400 Subject: [PATCH] Bug in the rawservlet in extracting the repository out of the path. The offset for finding the next slash should be the current slash + 1, not the last offset + the offset of the current slash. --- src/test/java/com/gitblit/tests/SshKeysDispatcherTest.java | 30 ++++++++++++++++++++++++++++++ 1 files changed, 30 insertions(+), 0 deletions(-) diff --git a/src/test/java/com/gitblit/tests/SshKeysDispatcherTest.java b/src/test/java/com/gitblit/tests/SshKeysDispatcherTest.java index 8ccdc5b..23e6179 100644 --- a/src/test/java/com/gitblit/tests/SshKeysDispatcherTest.java +++ b/src/test/java/com/gitblit/tests/SshKeysDispatcherTest.java @@ -103,6 +103,20 @@ } @Test + public void testKeysAddBlankCommand() throws Exception { + testSshCommand("keys add --permission R", "\n"); + List<SshKey> keys = getKeyManager().getKeys(username); + assertEquals(String.format("There are %d keys!", keys.size()), 2, keys.size()); + } + + @Test + public void testKeysAddInvalidCommand() throws Exception { + testSshCommand("keys add --permission R", "My invalid key\n"); + List<SshKey> keys = getKeyManager().getKeys(username); + assertEquals(String.format("There are %d keys!", keys.size()), 2, keys.size()); + } + + @Test public void testKeysCommentCommand() throws Exception { List<SshKey> keys = getKeyManager().getKeys(username); assertTrue(StringUtils.isEmpty(keys.get(0).getComment())); @@ -112,4 +126,20 @@ keys = getKeyManager().getKeys(username); assertEquals(comment, keys.get(0).getComment()); } + + @Test + public void testKeysPermissionCommand() throws Exception { + List<SshKey> keys = getKeyManager().getKeys(username); + assertTrue(StringUtils.isEmpty(keys.get(0).getComment())); + testSshCommand(String.format("keys permission 1 %s", AccessPermission.CLONE)); + + keys = getKeyManager().getKeys(username); + assertEquals(AccessPermission.CLONE, keys.get(0).getPermission()); + + testSshCommand(String.format("keys permission 1 %s", AccessPermission.PUSH)); + + keys = getKeyManager().getKeys(username); + assertEquals(AccessPermission.PUSH, keys.get(0).getPermission()); + + } } -- Gitblit v1.9.1