diff --git a/cypress/integration/group2/mytools.ts b/cypress/integration/group2/mytools.ts
index 328b9bb54c..fba3415253 100644
--- a/cypress/integration/group2/mytools.ts
+++ b/cypress/integration/group2/mytools.ts
@@ -84,6 +84,19 @@ describe('Dockstore my tools', () => {
cy.visit('/my-tools/quay.io/A2/b1');
cy.contains('/Dockerfile');
});
+ it('should be able to add labels', () => {
+ cy.contains('quay.io/A2/a:latest');
+ cy.get('button')
+ .contains('Manage labels')
+ .click();
+ cy.get('input').type('potato');
+ cy.get('button')
+ .contains('Save')
+ .click();
+ cy.get('button')
+ .contains('Save')
+ .should('not.exist');
+ });
it('add and remove test parameter file', () => {
cy.server();
cy.route('api/containers/*?include=validations').as('getTool');
diff --git a/cypress/integration/group2/myworkflows.ts b/cypress/integration/group2/myworkflows.ts
index 4ee7352c0a..39c198b6cc 100644
--- a/cypress/integration/group2/myworkflows.ts
+++ b/cypress/integration/group2/myworkflows.ts
@@ -66,6 +66,19 @@ describe('Dockstore my workflows', () => {
cy.contains('Mode').trigger('mouseenter');
cy.get('.mat-tooltip').contains('STUB: Basic metadata pulled from source control.');
});
+ it('should be able to add labels', () => {
+ cy.contains('github.com/A/g');
+ cy.get('button')
+ .contains('Manage labels')
+ .click();
+ cy.get('input').type('potato');
+ cy.get('button')
+ .contains('Save')
+ .click();
+ cy.get('button')
+ .contains('Save')
+ .should('not.exist');
+ });
it('add and remove test parameter file', () => {
cy.visit('/my-workflows/github.com/A/l');
cy.contains('Versions').click();
diff --git a/src/app/container/container.component.html b/src/app/container/container.component.html
index c740c12f98..bd14f18534 100644
--- a/src/app/container/container.component.html
+++ b/src/app/container/container.component.html
@@ -107,17 +107,27 @@
+ Only comma-separated labels with alphanumeric characters and internal dashes allowed
-