From 5cff79fc970a2aab6172e4049e5da253ea0a52df Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ren=C3=A9=20Pfeuffer?= Date: Fri, 23 Nov 2018 11:05:20 +0100 Subject: [PATCH] Add unit test --- .../repository/xml/XmlRepositoryDAOTest.java | 29 ++++++++++++++++++- 1 file changed, 28 insertions(+), 1 deletion(-) diff --git a/scm-dao-xml/src/test/java/sonia/scm/repository/xml/XmlRepositoryDAOTest.java b/scm-dao-xml/src/test/java/sonia/scm/repository/xml/XmlRepositoryDAOTest.java index cd29ba04fe..dfefc026ca 100644 --- a/scm-dao-xml/src/test/java/sonia/scm/repository/xml/XmlRepositoryDAOTest.java +++ b/scm-dao-xml/src/test/java/sonia/scm/repository/xml/XmlRepositoryDAOTest.java @@ -13,6 +13,7 @@ import sonia.scm.repository.Repository; import sonia.scm.store.ConfigurationStore; import sonia.scm.store.ConfigurationStoreFactory; +import java.io.File; import java.io.IOException; import java.nio.file.Path; @@ -62,7 +63,7 @@ public class XmlRepositoryDAOTest { } @Test - public void modifyShould() { + public void modifyShouldStoreChangedRepository() { Repository oldRepository = new Repository("id", "old", null, null); RepositoryPath repositoryPath = new RepositoryPath("/path", "id", oldRepository); when(db.getPaths()).thenReturn(asList(repositoryPath)); @@ -114,4 +115,30 @@ public class XmlRepositoryDAOTest { assertThat(path.toString()).isEqualTo(context.getBaseDirectory().getPath() + "/" + InitialRepositoryLocationResolver.DEFAULT_REPOSITORY_PATH + "/id"); } + + @Test + public void shouldFindRepositoryForRelativePath() { + Repository existingRepository = new Repository("id", "old", null, null); + RepositoryPath repositoryPath = new RepositoryPath("relative/path", "id", existingRepository); + when(db.getPaths()).thenReturn(asList(repositoryPath)); + + XmlRepositoryDAO dao = new XmlRepositoryDAO(storeFactory, new InitialRepositoryLocationResolver(context), context); + + String id = dao.getIdForDirectory(new File(context.getBaseDirectory(), "relative/path/data")); + + assertThat(id).isEqualTo("id"); + } + + @Test + public void shouldFindRepositoryForAbsolutePath() { + Repository existingRepository = new Repository("id", "old", null, null); + RepositoryPath repositoryPath = new RepositoryPath("/tmp/somewhere/else", "id", existingRepository); + when(db.getPaths()).thenReturn(asList(repositoryPath)); + + XmlRepositoryDAO dao = new XmlRepositoryDAO(storeFactory, new InitialRepositoryLocationResolver(context), context); + + String id = dao.getIdForDirectory(new File("/tmp/somewhere/else/data")); + + assertThat(id).isEqualTo("id"); + } }