Merge branch '18169-cancel-button-not-working' into main
[arvados-workbench2.git] / cypress / integration / side-panel.spec.js
index 8882494bf81c69e501d3a50092b558c502d2c5ac..f9d4dca34014554d954b1c5ddd788393ea65ce05 100644 (file)
@@ -92,4 +92,52 @@ describe('Side panel tests', function() {
         })
     })
 
+    it('can edit project in side panel', () => {
+        cy.createProject({
+            owningUser: activeUser,
+            targetUser: activeUser,
+            projectName: 'mySharedWritableProject',
+            canWrite: true,
+            addToFavorites: false
+        });
+
+        cy.getAll('@mySharedWritableProject')
+            .then(function ([mySharedWritableProject]) {
+                cy.loginAs(activeUser);
+                
+                cy.get('[data-cy=side-panel-tree]').contains('Projects').click();
+
+                const newProjectName = `New project name ${mySharedWritableProject.name}`;
+                const newProjectDescription = `New project description ${mySharedWritableProject.name}`;
+
+                cy.testEditProjectOrCollection('[data-cy=side-panel-tree]', mySharedWritableProject.name, newProjectName, newProjectDescription);
+            });
+    });
+
+    it('side panel react to refresh when project data changes', () => {
+        const project = 'writableProject';
+
+        cy.createProject({
+            owningUser: activeUser,
+            targetUser: activeUser,
+            projectName: project,
+            canWrite: true,
+            addToFavorites: false
+        });
+
+        cy.getAll('@writableProject')
+            .then(function ([writableProject]) {
+                cy.loginAs(activeUser);
+                
+                cy.get('[data-cy=side-panel-tree]').contains('Projects').click();
+
+                cy.get('[data-cy=side-panel-tree]').contains(writableProject.name).should('exist');
+
+                cy.trashGroup(activeUser.token, writableProject.uuid);
+
+                cy.contains('Refresh').click();
+
+                cy.contains(writableProject.name).should('not.exist');
+            });
+    });
 })