Generate link to changesets for repository

This commit is contained in:
René Pfeuffer
2018-07-04 11:58:37 +02:00
parent cc30b7d2a1
commit 01a3b93289
9 changed files with 80 additions and 2 deletions

View File

@@ -48,7 +48,7 @@ public class RepositoryRootResourceTest {
@Before
public void prepareEnvironment() {
initMocks(this);
RepositoryResource repositoryResource = new RepositoryResource(repositoryToDtoMapper, repositoryManager, null, null);
RepositoryResource repositoryResource = new RepositoryResource(repositoryToDtoMapper, repositoryManager, null, null, null);
RepositoryRootResource repositoryRootResource = new RepositoryRootResource(MockProvider.of(repositoryResource));
dispatcher.getRegistry().addSingletonResource(repositoryRootResource);
}

View File

@@ -117,6 +117,14 @@ public class RepositoryToRepositoryDtoMapperTest {
dto.getLinks().getLinkBy("branches").get().getHref());
}
@Test
public void shouldCreateChangesetsLink() {
RepositoryDto dto = mapper.map(createTestRepository());
assertEquals(
"http://example.com/base/v2/repositories/testspace/test/changesets/",
dto.getLinks().getLinkBy("changesets").get().getHref());
}
private Repository createTestRepository() {
Repository repository = new Repository();
repository.setNamespace("testspace");

View File

@@ -20,6 +20,7 @@ public class ResourceLinksMock {
when(resourceLinks.repository()).thenReturn(new ResourceLinks.RepositoryLinks(uriInfo));
when(resourceLinks.tagCollection()).thenReturn(new ResourceLinks.TagCollectionLinks(uriInfo));
when(resourceLinks.branchCollection()).thenReturn(new ResourceLinks.BranchCollectionLinks(uriInfo));
when(resourceLinks.changesetCollection()).thenReturn(new ResourceLinks.ChangesetCollectionLinks(uriInfo));
return resourceLinks;
}
}

View File

@@ -114,6 +114,12 @@ public class ResourceLinksTest {
assertEquals(BASE_URL + RepositoryRootResource.REPOSITORIES_PATH_V2 + "space/repo/branches/", url);
}
@Test
public void shouldCreateCorrectChangesetCollectionUrl() {
String url = resourceLinks.changesetCollection().self("space", "repo");
assertEquals(BASE_URL + RepositoryRootResource.REPOSITORIES_PATH_V2 + "space/repo/changesets/", url);
}
@Before
public void initUriInfo() {
initMocks(this);