Merge branch '20899-wf-delete' refs #20899
[arvados-workbench2.git] / cypress / integration / virtual-machine-admin.spec.js
index f01a8911060ffd22e6545f8a3f0ffca137a4e190..80d649777bfb436d6f9052f17dd74ccbfd0d63ae 100644 (file)
@@ -50,21 +50,31 @@ describe('Virtual machine login manage tests', function() {
                     cy.get('input').type('VMAdmin');
                   })
             });
-        cy.get('[role=tooltip]').click();
-        cy.get('[data-cy=form-dialog]')
+        cy.waitForDom().get('[role=tooltip]').click();
+        cy.get('[data-cy=form-dialog]').as('add-login-dialog')
             .should('contain', 'Add login permission')
             .within(() => {
                 cy.get('label')
                   .contains('Add groups')
                   .parent()
                   .within(() => {
-                    cy.get('input').type('docker sudo{enter}');
+                    cy.get('input').type('docker ');
+                    // Veryfy submit enabled (form has changed)
+                    cy.get('@add-login-dialog').within(() => {
+                        cy.get('[data-cy=form-submit-btn]').should('be.enabled');
+                    });
+                    cy.get('input').type('sudo');
+                    // Veryfy submit disabled (partial input in chips)
+                    cy.get('@add-login-dialog').within(() => {
+                        cy.get('[data-cy=form-submit-btn]').should('be.disabled');
+                    });
+                    cy.get('input').type('{enter}');
                   })
             });
         cy.get('[data-cy=form-dialog]').within(() => {
             cy.get('[data-cy=form-submit-btn]').click();
         });
-        cy.get('[data-cy=snackbar]').contains('Permission updated');
+
         cy.get('[data-cy=vm-admin-table]')
             .contains(vmHost)
             .parents('tr')
@@ -93,7 +103,7 @@ describe('Virtual machine login manage tests', function() {
         cy.get('[data-cy=form-dialog]').within(() => {
             cy.get('[data-cy=form-submit-btn]').click();
         });
-        cy.get('[data-cy=snackbar]').contains('Permission updated');
+
         cy.get('[data-cy=vm-admin-table]')
             .contains(vmHost)
             .parents('tr')
@@ -163,7 +173,6 @@ describe('Virtual machine login manage tests', function() {
         });
 
         // Wait for page to finish loading
-        cy.get('[data-cy=snackbar]').contains('Permission updated');
         cy.get('[data-cy=vm-admin-table]')
             .contains(vmHost)
             .parents('tr')
@@ -194,7 +203,6 @@ describe('Virtual machine login manage tests', function() {
         cy.get('[data-cy=form-dialog]').within(() => {
             cy.get('[data-cy=form-submit-btn]').click();
         });
-        cy.get('[data-cy=snackbar]').contains('Permission updated');
 
         // Verify new login permissions
         // Check admin's vm page for login
@@ -261,11 +269,11 @@ describe('Virtual machine login manage tests', function() {
         cy.get('@removeButton').click();
         cy.get('[data-cy=confirmation-dialog-ok-btn]').click();
 
-        cy.get('[data-cy=vm-admin-table]')
+        cy.waitForDom().get('[data-cy=vm-admin-table]')
             .contains(vmHost)
             .parents('tr')
             .within(() => {
-                cy.get('div[role=button]').should('not.contain', 'admin');
+                cy.get('div[role=button]').should('not.exist');
             });
 
         // Check admin's vm page for login