Skip to content

Commit

Permalink
Merge branch 'NBO/redirect_when_clicking_scenario_name_SDCOSMO-1274'
Browse files Browse the repository at this point in the history
  • Loading branch information
nborde-CSM committed Jul 9, 2024
2 parents 271ab5c + 3d0bb62 commit 6aef1af
Show file tree
Hide file tree
Showing 8 changed files with 38 additions and 28 deletions.
25 changes: 16 additions & 9 deletions cypress/commons/actions/generic/ScenarioManager.js
Original file line number Diff line number Diff line change
Expand Up @@ -57,20 +57,26 @@ function getScenarioCreationDate(scenarioId) {
return getScenarioAccordion(scenarioId).find(GENERIC_SELECTORS.scenario.creationDate);
}

function getScenarioEditableLabel(scenarioId, timeout = 5) {
return getScenarioAccordion(scenarioId).find(GENERIC_SELECTORS.scenario.manager.editableLabel, {
function getRenameScenarioButton(scenarioId) {
return getScenarioAccordion(scenarioId).find(GENERIC_SELECTORS.scenario.manager.button.renameScenario);
}
function getScenarioEditableLink(scenarioId, timeout = 5) {
return getScenarioAccordion(scenarioId).find(GENERIC_SELECTORS.scenario.manager.editableLink, {
timeout: timeout * 1000,
});
}
function getScenarioEditableLabelInEditMode(scenarioId, timeout = 5) {
return getScenarioAccordion(scenarioId).find(GENERIC_SELECTORS.scenario.manager.editableLabelInEditMode, {
function getScenarioEditableLinkInEditMode(scenarioId, timeout = 5) {
return getScenarioAccordion(scenarioId).find(GENERIC_SELECTORS.scenario.manager.editableLinkInEditMode, {
timeout: timeout * 1000,
});
}
function renameScenario(scenarioId, newScenarioName) {
return ScenarioManager.getScenarioEditableLabel(scenarioId)
.click()
.type('{selectAll}{backspace}' + newScenarioName + '{enter}');
const renameScenarioAlias = api.interceptUpdateScenario(scenarioId);

getRenameScenarioButton(scenarioId).click();
getScenarioEditableLinkInEditMode(scenarioId).type('{selectAll}{backspace}' + newScenarioName + '{enter}');

api.waitAlias(renameScenarioAlias);
}

function getScenarioValidationStatusChip(scenarioId) {
Expand Down Expand Up @@ -164,8 +170,9 @@ export const ScenarioManager = {
getScenarioAccordion,
getScenarioOwnerName,
getScenarioCreationDate,
getScenarioEditableLabel,
getScenarioEditableLabelInEditMode,
getRenameScenarioButton,
getScenarioEditableLink,
getScenarioEditableLinkInEditMode,
renameScenario,
getScenarioValidationStatusChip,
getScenarioValidationStatusLoadingSpinner,
Expand Down
4 changes: 3 additions & 1 deletion cypress/commons/constants/generic/IdConstants.js
Original file line number Diff line number Diff line change
Expand Up @@ -120,14 +120,16 @@ export const GENERIC_SELECTORS = {
search: '[data-cy=scenario-manager-search-field]',
button: {
delete: '[data-cy=scenario-delete-button]',
renameScenario: '[data-cy=rename-scenario-button]',
},
scenarioAccordion: '[data-cy=scenario-accordion-$SCENARIOID]',
scenarioAccordions: '[data-cy^=scenario-accordion-]',
scenarioAccordionExpandButton: '[data-cy=expand-accordion-button]',
scenarioRunTemplate: '[data-cy=scenario-run-template]',
scenarioDataset: '[data-cy=scenario-datasets]',
editableLabel: '[data-cy=editable-label]',
editableLabelInEditMode: '[data-cy=editable-label-in-edition-mode]',
editableLink: '[data-cy=editable-link]',
editableLinkInEditMode: '[data-cy=editable-link-in-edition-mode]',
},
},
workspace: {
Expand Down
13 changes: 6 additions & 7 deletions cypress/e2e/brewery/RenameScenario.cy.js
Original file line number Diff line number Diff line change
Expand Up @@ -48,13 +48,12 @@ describe('Create scenario and rename it', () => {
Scenarios.createScenario(scenarioName, true, SCENARIO_DATASET, SCENARIO_RUN_TEMPLATE).then((data) => {
const scenarioId = data.scenarioCreatedId;
ScenarioManager.switchToScenarioManager();
ScenarioManager.getScenarioEditableLabel(scenarioId)
.click()
ScenarioManager.getRenameScenarioButton(scenarioId).click();
ScenarioManager.getScenarioEditableLink(scenarioId, 15)
.type('{selectAll}{backspace}' + newScenarioName + '{esc}') // Do not confirm new name
.should('have.text', scenarioName);

ScenarioManager.renameScenario(scenarioId, newScenarioName);
ScenarioManager.getScenarioEditableLabel(scenarioId, 15).should('have.text', newScenarioName);
ScenarioManager.getScenarioEditableLink(scenarioId, 15).should('have.text', newScenarioName);
Scenarios.switchToScenarioView();
ScenarioSelector.selectScenario(anotherScenario, anotherScenarioId);
ScenarioSelector.selectScenario(newScenarioName, scenarioId);
Expand All @@ -65,7 +64,7 @@ describe('Create scenario and rename it', () => {
ScenarioManager.switchToScenarioManager();
ScenarioManager.getScenarioAccordion(scenarioId).click();
ScenarioManager.renameScenario(scenarioId, newScenarioName);
ScenarioManager.getScenarioEditableLabel(scenarioId, 15).should('have.text', newScenarioName);
ScenarioManager.getScenarioEditableLink(scenarioId, 15).should('have.text', newScenarioName);
ScenarioManager.getScenarioViewRedirect(scenarioId).click();
ScenarioSelector.selectScenario(anotherScenario, anotherScenarioId);
ScenarioSelector.selectScenario(newScenarioName, scenarioId);
Expand All @@ -89,9 +88,9 @@ describe('Create scenario and rename it', () => {
ScenarioManager.switchToScenarioManager();

ScenarioManager.renameScenario(scenarioID1, scenarioName1B);
ScenarioManager.getScenarioEditableLabel(scenarioID1, 15).should('have.text', scenarioName1B);
ScenarioManager.getScenarioEditableLink(scenarioID1, 15).should('have.text', scenarioName1B);
ScenarioManager.renameScenario(scenarioID2, scenarioName1A);
ScenarioManager.getScenarioEditableLabel(scenarioID2, 15).should('have.text', scenarioName1A);
ScenarioManager.getScenarioEditableLink(scenarioID2, 15).should('have.text', scenarioName1A);

ScenarioManager.getScenarioViewRedirect(scenarioID2).click();
ScenarioSelector.selectScenario(anotherScenario, anotherScenarioId);
Expand Down
2 changes: 1 addition & 1 deletion cypress/e2e/brewery/ScenarioManager.cy.js
Original file line number Diff line number Diff line change
Expand Up @@ -55,7 +55,7 @@ describe('Create scenario and check its data in scenario manager', () => {
ScenarioManager.getScenarioAccordion(scenarioId).click();
ScenarioManager.getScenarioOwnerName(scenarioId).should('have.text', scenarioOwnerName);
ScenarioManager.getScenarioCreationDate(scenarioId).should('have.text', _formatDate(scenarioCreationDate));
ScenarioManager.getScenarioEditableLabel(scenarioId).should('have.text', scenarioName);
ScenarioManager.getScenarioEditableLink(scenarioId).should('have.text', scenarioName);
ScenarioManager.getScenarioRunStatus(scenarioId, SCENARIO_STATUS.CREATED);
ScenarioManager.getScenarioRunTemplate(scenarioId).should('have.text', scenarioRunTemplate);
ScenarioManager.getScenarioDataset(scenarioId).should('have.text', DATASET.BREWERY_ADT, { matchCase: false });
Expand Down
14 changes: 7 additions & 7 deletions cypress/e2e/brewery/ScenarioSharing.cy.js
Original file line number Diff line number Diff line change
Expand Up @@ -51,9 +51,9 @@ describe('Check workspace permissions for admin', () => {
ScenarioManager.switchToScenarioManager();
ScenarioManager.getScenarioAccordion(PRIVATE_SCENARIOS_LIST[0].id);
ScenarioManager.getDeleteScenarioButton().should('be.visible').should('not.be.disabled');
ScenarioManager.getScenarioEditableLabelInEditMode(PRIVATE_SCENARIOS_LIST[0].id).should('not.exist');
ScenarioManager.getScenarioEditableLabel(PRIVATE_SCENARIOS_LIST[0].id).click();
ScenarioManager.getScenarioEditableLabelInEditMode(PRIVATE_SCENARIOS_LIST[0].id).should('exist');
ScenarioManager.getScenarioEditableLink(PRIVATE_SCENARIOS_LIST[0].id).should('not.exist');
ScenarioManager.getRenameScenarioButton(PRIVATE_SCENARIOS_LIST[0].id).should('exist').click();
ScenarioManager.getScenarioEditableLinkInEditMode(PRIVATE_SCENARIOS_LIST[0].id).should('exist');
});

it('Is shown a message error when last admin is removed', () => {
Expand Down Expand Up @@ -179,7 +179,7 @@ describe('Check workspace permissions for Viewer, Editor & Validator', () => {
ScenarioManager.switchToScenarioManager();
ScenarioManager.getScenarioAccordion(scenario.id);
ScenarioManager.getDeleteScenarioButton().should('not.exist');
ScenarioManager.getScenarioEditableLabel(scenario.id).should('not.exist');
ScenarioManager.getRenameScenarioButton(scenario.id).should('not.exist');
});

it('Check Editor permissions', () => {
Expand All @@ -193,9 +193,9 @@ describe('Check workspace permissions for Viewer, Editor & Validator', () => {
ScenarioManager.switchToScenarioManager();
ScenarioManager.getScenarioAccordion(scenario.id);
ScenarioManager.getDeleteScenarioButton().should('not.exist');
ScenarioManager.getScenarioEditableLabelInEditMode(scenario.id).should('not.exist');
ScenarioManager.getScenarioEditableLabel(scenario.id).click();
ScenarioManager.getScenarioEditableLabelInEditMode(scenario.id).should('exist');
ScenarioManager.getScenarioEditableLinkInEditMode(scenario.id).should('not.exist');
ScenarioManager.getRenameScenarioButton(scenario.id).click();
ScenarioManager.getScenarioEditableLinkInEditMode(scenario.id).should('exist');
});

it('Check Validator permissions', () => {
Expand Down
3 changes: 2 additions & 1 deletion public/locales/en/translation.json
Original file line number Diff line number Diff line change
Expand Up @@ -326,7 +326,8 @@
},
"action": {
"delete": "Delete this scenario",
"redirect": "Open in scenario view"
"redirect": "Open in scenario view",
"edit": "Edit scenario name"
},
"text": {
"search": "Filter..."
Expand Down
3 changes: 2 additions & 1 deletion public/locales/fr/translation.json
Original file line number Diff line number Diff line change
Expand Up @@ -326,7 +326,8 @@
},
"action": {
"delete": "Supprimer ce scénario",
"redirect": "Ouvrir dans la vue scénario"
"redirect": "Ouvrir dans la vue scénario",
"edit": "Editer le nom du scenario"
},
"text": {
"search": "Filtrer..."
Expand Down
2 changes: 1 addition & 1 deletion src/views/ScenarioManager/labels.js
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ export const getScenarioManagerLabels = (t) => ({
failed: t('commoncomponents.scenariomanager.treelist.node.status.failed'),
created: t('commoncomponents.scenariomanager.treelist.node.status.created'),
delete: t('commoncomponents.scenariomanager.treelist.node.action.delete'),
redirect: t('commoncomponents.scenariomanager.treelist.node.action.redirect'),
edit: t('commoncomponents.scenariomanager.treelist.node.action.edit'),
scenarioRename: {
title: t('commoncomponents.dialog.create.scenario.input.scenarioname.label'),
errors: {
Expand Down

0 comments on commit 6aef1af

Please sign in to comment.