[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