File tree Expand file tree Collapse file tree 1 file changed +30
-0
lines changed
src/test/java/org/dependencytrack/resources/v1 Expand file tree Collapse file tree 1 file changed +30
-0
lines changed Original file line number Diff line number Diff 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 );
You can’t perform that action at this time.
0 commit comments