[ARVADOS-WORKBENCH2] updated: 1.4.1-435-g14903d60

Git user git at public.arvados.org
Fri Sep 18 22:36:26 UTC 2020


Summary of changes:
 README.md                        | 11 ++++++++++
 cypress/integration/favorites.js | 47 ++++++++++++++++++++++++++++++++++++++++
 cypress/support/commands.js      | 18 ++++++++++++++-
 3 files changed, 75 insertions(+), 1 deletion(-)
 create mode 100644 cypress/integration/favorites.js

       via  14903d601d6c878f1d772f0b91c0877891a2e78c (commit)
      from  e44d47bdea01e25926f4f3ff750f2d1cb4fd8204 (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 14903d601d6c878f1d772f0b91c0877891a2e78c
Author: Peter Amstutz <peter.amstutz at curii.com>
Date:   Fri Sep 18 18:35:38 2020 -0400

    16811: Add cypress test for setting/unsetting public favorite
    
    Arvados-DCO-1.1-Signed-off-by: Peter Amstutz <peter.amstutz at curii.com>

diff --git a/README.md b/README.md
index 38a26e54..55e96af3 100644
--- a/README.md
+++ b/README.md
@@ -31,6 +31,17 @@ make integration-tests
 make integration-tests-in-docker
 </pre>
 
+### Run tests interactively in container
+
+<pre>
+$ xhost +local:root
+$ ARVADOS_DIR=/path/to/arvados
+$ docker run -ti -v$PWD:$PWD -v$ARVADOS_DIR:/usr/src/arvados -w$PWD --env="DISPLAY" --volume="/tmp/.X11-unix:/tmp/.X11-unix:rw" workbench2-build /bin/bash
+(inside container)
+# yarn run cypress install
+# tools/run-integration-tests.sh -i -a /usr/src/arvados
+</pre>
+
 ### Production build
 <pre>
 yarn install
diff --git a/cypress/integration/favorites.js b/cypress/integration/favorites.js
new file mode 100644
index 00000000..8ef4899f
--- /dev/null
+++ b/cypress/integration/favorites.js
@@ -0,0 +1,47 @@
+// Copyright (C) The Arvados Authors. All rights reserved.
+//
+// SPDX-License-Identifier: AGPL-3.0
+
+describe('Collection panel tests', function() {
+    let activeUser;
+    let adminUser;
+
+    before(function() {
+        // Only set up common users once. These aren't set up as aliases because
+        // aliases are cleaned up after every test. Also it doesn't make sense
+        // to set the same users on beforeEach() over and over again, so we
+        // separate a little from Cypress' 'Best Practices' here.
+        cy.getUser('admin', 'Admin', 'User', true, true)
+            .as('adminUser').then(function() {
+                adminUser = this.adminUser;
+            }
+        );
+        cy.getUser('collectionuser1', 'Collection', 'User', false, true)
+            .as('activeUser').then(function() {
+                activeUser = this.activeUser;
+            }
+        );
+    })
+
+    beforeEach(function() {
+        cy.clearCookies()
+        cy.clearLocalStorage()
+    })
+
+    it('creates and removes a public favorite', function() {
+        cy.loginAs(adminUser);
+            cy.createGroup(adminUser.token, {
+                name: `my-favorite-project`,
+                group_class: 'project',
+            }).as('myFavoriteProject').then(function() {
+                cy.contains('Refresh').click();
+                cy.get('main').contains('my-favorite-project').rightclick();
+                cy.contains('Add to public favorites').click();
+                cy.contains('Public Favorites').click();
+                cy.get('main').contains('my-favorite-project').rightclick();
+                cy.contains('Remove from public favorites').click();
+                cy.get('main').contains('my-favorite-project').should('not.exist');
+                cy.trashGroup(adminUser.token, this.myFavoriteProject.uuid);
+            });
+    })
+})
diff --git a/cypress/support/commands.js b/cypress/support/commands.js
index 8baa2db6..fd513998 100644
--- a/cypress/support/commands.js
+++ b/cypress/support/commands.js
@@ -110,6 +110,12 @@ Cypress.Commands.add(
     }
 )
 
+Cypress.Commands.add(
+    "trashGroup", (token, uuid) => {
+        return cy.deleteResource(token, 'groups', uuid);
+    }
+)
+
 Cypress.Commands.add(
     "createCollection", (token, data) => {
         return cy.createResource(token, 'collections', {
@@ -129,6 +135,16 @@ Cypress.Commands.add(
     }
 )
 
+Cypress.Commands.add(
+    "deleteResource", (token, suffix, uuid) => {
+        return cy.doRequest('DELETE', '/arvados/v1/'+suffix+'/'+uuid)
+        .its('body').as('resource')
+        .then(function() {
+            return this.resource;
+        })
+    }
+)
+
 Cypress.Commands.add(
     "loginAs", (user) => {
         cy.visit(`/token/?api_token=${user.token}`);
@@ -136,4 +152,4 @@ Cypress.Commands.add(
         cy.get('div#root').should('contain', 'Arvados Workbench (zzzzz)');
         cy.get('div#root').should('not.contain', 'Your account is inactive');
     }
-)
\ No newline at end of file
+)

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


hooks/post-receive
-- 




More information about the arvados-commits mailing list