[arvados-workbench2] updated: 2.5.0-71-g4a916426

git repository hosting git at public.arvados.org
Mon Feb 27 20:33:14 UTC 2023


Summary of changes:
 cypress/integration/project.spec.js | 60 +++++++++++++++++++++++++++++++++++++
 1 file changed, 60 insertions(+)

       via  4a916426f9220c5999963ea76d71e0a6a32e14fe (commit)
      from  a2442ad07740434e1862c22fcbd1e9fd729ed401 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.


commit 4a916426f9220c5999963ea76d71e0a6a32e14fe
Author: Stephen Smith <stephen at curii.com>
Date:   Mon Feb 27 15:32:54 2023 -0500

    19930: Add cypress tests for whitespace project descriptions
    
    Arvados-DCO-1.1-Signed-off-by: Stephen Smith <stephen at curii.com>

diff --git a/cypress/integration/project.spec.js b/cypress/integration/project.spec.js
index 43f36945..f58cf7fe 100644
--- a/cypress/integration/project.spec.js
+++ b/cypress/integration/project.spec.js
@@ -120,6 +120,66 @@ describe('Project tests', function() {
         });
     });
 
+    it('creates a project without and with description', function() {
+        const projName = `Test project (${Math.floor(999999 * Math.random())})`;
+        cy.loginAs(activeUser);
+
+        // Create project
+        cy.get('[data-cy=side-panel-button]').click();
+        cy.get('[data-cy=side-panel-new-project]').click();
+        cy.get('[data-cy=form-dialog]')
+            .should('contain', 'New Project')
+            .within(() => {
+                cy.get('[data-cy=name-field]').within(() => {
+                    cy.get('input').type(projName);
+                });
+            });
+        cy.get('[data-cy=form-submit-btn]').click();
+
+        const editProjectDescription = (name, type) => {
+            cy.get('[data-cy=side-panel-tree]').contains('Home Projects').click();
+            cy.get('[data-cy=project-panel] tbody tr').contains(name).rightclick();
+            cy.get('[data-cy=context-menu]').contains('Edit').click();
+            cy.get('[data-cy=form-dialog]').within(() => {
+                cy.get('div[contenteditable=true]')
+                    .click()
+                    .type(type);
+                cy.get('[data-cy=form-submit-btn]').click();
+            });
+        };
+
+        const verifyProjectDescription = (name, description) => {
+            cy.doRequest('GET', '/arvados/v1/groups', null, {
+                filters: `[["name", "=", "${name}"], ["group_class", "=", "project"]]`,
+            })
+            .its('body.items').as('projects')
+            .then(function() {
+                expect(this.projects).to.have.lengthOf(1);
+                expect(this.projects[0].description).to.equal(description);
+            });
+        };
+
+        // Edit description
+        editProjectDescription(projName, 'Test description');
+
+        // Check description is set
+        verifyProjectDescription("<p>Test description</p>");
+
+        // Clear description
+        editProjectDescription(projName, '{selectall}{backspace}');
+
+        // Check description is null
+        verifyProjectDescription(null);
+
+        // Set description to contain whitespace
+        editProjectDescription(projName, '{selectall}{backspace}    x');
+        editProjectDescription(projName, '{backspace}');
+
+        // Check description is null
+        verifyProjectDescription(null);
+
+    });
+
     it('creates new project on home project and then a subproject inside it', function() {
         const createProject = function(name, parentName) {
             cy.get('[data-cy=side-panel-button]').click();

-----------------------------------------------------------------------


hooks/post-receive
-- 




More information about the arvados-commits mailing list