From 1c30dad2115fc513791d8a5b292ad0f7d7b85749 Mon Sep 17 00:00:00 2001 From: lemval <mvanleeuwen@xebia.com> Date: Tue, 31 Jan 2012 09:25:02 -0500 Subject: [PATCH] Do not traverse unaccessible subdirectories (issue 51) --- tests/com/gitblit/tests/SyndicationUtilsTest.java | 72 +++++++++++++++++++++++++++++------- 1 files changed, 58 insertions(+), 14 deletions(-) diff --git a/tests/com/gitblit/tests/SyndicationUtilsTest.java b/tests/com/gitblit/tests/SyndicationUtilsTest.java index 6084b99..ca6678d 100644 --- a/tests/com/gitblit/tests/SyndicationUtilsTest.java +++ b/tests/com/gitblit/tests/SyndicationUtilsTest.java @@ -15,36 +15,80 @@ */ package com.gitblit.tests; +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertTrue; + import java.io.ByteArrayOutputStream; +import java.util.ArrayList; +import java.util.Date; +import java.util.HashSet; import java.util.List; +import java.util.Set; -import junit.framework.TestCase; +import org.junit.Test; -import org.eclipse.jgit.lib.Repository; -import org.eclipse.jgit.revwalk.RevCommit; - -import com.gitblit.models.SyndicatedEntryModel; -import com.gitblit.utils.JGitUtils; +import com.gitblit.Constants.SearchType; +import com.gitblit.models.FeedEntryModel; import com.gitblit.utils.SyndicationUtils; -public class SyndicationUtilsTest extends TestCase { +public class SyndicationUtilsTest { + @Test public void testSyndication() throws Exception { - Repository repository = GitBlitSuite.getHelloworldRepository(); - List<RevCommit> commits = JGitUtils.getRevLog(repository, 1); + List<FeedEntryModel> entries = new ArrayList<FeedEntryModel>(); + for (int i = 0; i < 10; i++) { + FeedEntryModel entry = new FeedEntryModel(); + entry.title = "Title " + i; + entry.author = "Author " + i; + entry.link = "Link " + i; + entry.published = new Date(); + entry.contentType = "text/plain"; + entry.content = "Content " + i; + entry.repository = "Repository " + i; + entry.branch = "Branch " + i; + List<String> tags = new ArrayList<String>(); + for (int j = 0; j < 5; j++) { + tags.add("Tag " + j); + } + entry.tags = tags; + entries.add(entry); + } ByteArrayOutputStream os = new ByteArrayOutputStream(); - SyndicationUtils.toRSS("http://localhost", "Title", "Description", "Repository", commits, - os); + SyndicationUtils.toRSS("http://localhost", "", "Title", "Description", "Repository", + entries, os); String feed = os.toString(); os.close(); - assertTrue(feed.length() > 100); assertTrue(feed.indexOf("<title>Title</title>") > -1); assertTrue(feed.indexOf("<description>Description</description>") > -1); } + @Test public void testFeedRead() throws Exception { - List<SyndicatedEntryModel> feed = SyndicationUtils.readFeed("https://localhost:8443", - "ticgit.git", "master", 5, "admin", "admin".toCharArray()); + Set<String> links = new HashSet<String>(); + for (int i = 0; i < 2; i++) { + List<FeedEntryModel> feed = SyndicationUtils.readFeed(GitBlitSuite.url, "ticgit.git", + "deving", 5, i, GitBlitSuite.account, GitBlitSuite.password.toCharArray()); + assertTrue(feed != null); + assertTrue(feed.size() > 0); + assertEquals(5, feed.size()); + for (FeedEntryModel entry : feed) { + links.add(entry.link); + } + } + // confirm we have 10 unique commits + assertEquals("Feed pagination failed", 10, links.size()); + } + + @Test + public void testSearchFeedRead() throws Exception { + List<FeedEntryModel> feed = SyndicationUtils + .readSearchFeed(GitBlitSuite.url, "ticgit.git", null, "test", null, 5, 0, + GitBlitSuite.account, GitBlitSuite.password.toCharArray()); + assertTrue(feed != null); + assertTrue(feed.size() > 0); + assertEquals(5, feed.size()); + feed = SyndicationUtils.readSearchFeed(GitBlitSuite.url, "ticgit.git", "master", "test", + SearchType.COMMIT, 5, 1, GitBlitSuite.account, GitBlitSuite.password.toCharArray()); assertTrue(feed != null); assertTrue(feed.size() > 0); assertEquals(5, feed.size()); -- Gitblit v1.9.1