20219: Replace API & websocket log loading with webdav polling
[arvados-workbench2.git] / cypress / integration / virtual-machine-admin.spec.js
index 73804b2030da01a5d50f80d4a75da380b49425d7..49cb12394648138417404b52a001f2698002a541 100644 (file)
@@ -51,19 +51,30 @@ describe('Virtual machine login manage tests', function() {
                   })
             });
         cy.get('[role=tooltip]').click();
-        cy.get('[data-cy=form-dialog]')
+        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=vm-admin-table]')
             .contains(vmHost)
             .parents('tr')
@@ -92,6 +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=vm-admin-table]')
             .contains(vmHost)
             .parents('tr')
@@ -160,8 +172,16 @@ describe('Virtual machine login manage tests', function() {
             cy.get('[data-cy=form-submit-btn]').click();
         });
 
+        // Wait for page to finish loading
         cy.get('[data-cy=vm-admin-table]')
-            .contains('user'); // Wait for page to finish
+            .contains(vmHost)
+            .parents('tr')
+            .within(() => {
+                cy.get('div[role=button]')
+                    .parent()
+                    .first()
+                    .contains('admin')
+            });
 
         cy.get('[data-cy=vm-admin-table]')
             .contains(vmHost)