Skip to content

Commit 9602ac8

Browse files
DependencyTrack#4539: add test case for adding extra tag to project
Signed-off-by: Valentijn Scholten <[email protected]>
1 parent aefd50a commit 9602ac8

File tree

1 file changed

+30
-0
lines changed

1 file changed

+30
-0
lines changed

src/test/java/org/dependencytrack/resources/v1/TagResourceTest.java

+30
Original file line numberDiff line numberDiff line change
@@ -813,6 +813,36 @@ public void tagProjectsWhenAlreadyTaggedTest() {
813813
assertThat(project.getTags()).satisfiesExactly(projectTag -> assertThat(projectTag.getName()).isEqualTo("foo"));
814814
}
815815

816+
@Test
817+
public void tagProjectsExtraTagTest() {
818+
initializeWithPermissions(Permissions.PORTFOLIO_MANAGEMENT);
819+
820+
final var projectA = new Project();
821+
projectA.setName("acme-app-a");
822+
qm.persist(projectA);
823+
824+
final var projectB = new Project();
825+
projectB.setName("acme-app-b");
826+
qm.persist(projectB);
827+
828+
final Tag tagFoo = qm.createTag("foo");
829+
qm.bind(projectA, List.of(tagFoo));
830+
831+
final Tag tagBar = qm.createTag("bar");
832+
qm.bind(projectB, List.of(tagBar));
833+
834+
final Response response = jersey.target(V1_TAG + "/bar/project")
835+
.request()
836+
.header(X_API_KEY, apiKey)
837+
.post(Entity.json(List.of(projectA.getUuid())));
838+
assertThat(response.getStatus()).isEqualTo(204);
839+
840+
qm.getPersistenceManager().evictAll();
841+
List<Tag> tagsA = projectA.getTags();
842+
assertThat(tagsA).satisfiesExactlyInAnyOrder( projectTag -> assertThat(projectTag.getName()).isEqualTo("foo"),
843+
projectTag -> assertThat(projectTag.getName()).isEqualTo("bar"));
844+
}
845+
816846
@Test
817847
public void untagProjectsTest() {
818848
initializeWithPermissions(Permissions.PORTFOLIO_MANAGEMENT);

0 commit comments

Comments
 (0)