diff --git a/tests/cypress.json b/tests/cypress.json index fe266d54eba75e89ea2095fce1d8dd52d0db6645..1588e3cefaa627d5d24f143c9387317070048306 100644 --- a/tests/cypress.json +++ b/tests/cypress.json @@ -11,7 +11,7 @@ }, "testFiles": [ "auth_page.js", - "actions_tasks_objects/*", + "actions_tasks_objects/**/*", "actions_users/**/*", "actions_projects/**/*", "remove_users_tasks_projects.js" diff --git a/tests/cypress/integration/actions_tasks_objects/registration_involved/case_39_issue_2572_rename_task.js b/tests/cypress/integration/actions_tasks_objects/registration_involved/case_39_issue_2572_rename_task.js new file mode 100644 index 0000000000000000000000000000000000000000..f21c65ec19aeef6cc1e0999519573d25e57922cc --- /dev/null +++ b/tests/cypress/integration/actions_tasks_objects/registration_involved/case_39_issue_2572_rename_task.js @@ -0,0 +1,78 @@ +// Copyright (C) 2021 Intel Corporation +// +// SPDX-License-Identifier: MIT + +/// + +context('Rename a task.', () => { + const caseId = '39'; + const labelName = `Case ${caseId}`; + const taskName = `New annotation task for ${labelName}`; + const attrName = `Attr for ${labelName}`; + const textDefaultValue = 'Some default value for type Text'; + const imagesCount = 1; + const imageFileName = `image_${labelName.replace(' ', '_').toLowerCase()}`; + const width = 800; + const height = 800; + const posX = 10; + const posY = 10; + const color = 'gray'; + const archiveName = `${imageFileName}.zip`; + const archivePath = `cypress/fixtures/${archiveName}`; + const imagesFolder = `cypress/fixtures/${imageFileName}`; + const directoryToArchive = imagesFolder; + const newNaskName = taskName.replace('39', '3339'); + const secondUserName = 'Case39'; + const secondUser = { + firstName: `Firtstnamerenametask`, + lastName: `Lastnamerenametask`, + emailAddr: `${secondUserName.toLowerCase()}@local.local`, + password: 'Pass!UserCase39', + }; + + function renameTask(taskName, newValue) { + cy.get('.cvat-task-details-task-name').within(() => { + cy.get('[aria-label="edit"]').click(); + }); + cy.contains('.cvat-text-color', taskName).click().type(newValue); + } + + before(() => { + cy.visit('auth/login'); + cy.login(); + cy.imageGenerator(imagesFolder, imageFileName, width, height, color, posX, posY, labelName, imagesCount); + cy.createZipArchive(directoryToArchive, archivePath); + cy.createAnnotationTask(taskName, labelName, attrName, textDefaultValue, archiveName); + cy.openTask(taskName); + }); + + after(() => { + cy.login(); + cy.getTaskID(newNaskName).then(($taskID) => { + cy.deleteTask(newNaskName, $taskID); + }); + }); + + describe(`Testing "${labelName}". Issue 2572.`, () => { + it('Rename the task. Issue is not reproduce.', () => { + renameTask(taskName, '{leftarrow}{leftarrow}33{Enter}'); + cy.contains('.cvat-task-details-task-name', newNaskName).should('exist'); + cy.logout(); + }); + it('Registration a second user. Rename the task. Status 403 appear.', () => { + cy.goToRegisterPage(); + cy.userRegistration( + secondUser.firstName, + secondUser.lastName, + secondUserName, + secondUser.emailAddr, + secondUser.password, + ); + cy.openTask(newNaskName); + renameTask(newNaskName, '{leftarrow}{leftarrow}3{Enter}'); + cy.get('.cvat-notification-notice-update-task-failed').should('exist'); + cy.closeNotification('.cvat-notification-notice-update-task-failed'); + cy.logout(secondUserName); + }); + }); +});