From 75e5aef14d2eb02077e741a870a83c7c8b956c89 Mon Sep 17 00:00:00 2001 From: Benjamin Arias Date: Thu, 15 Sep 2022 10:23:53 +0200 Subject: [PATCH] Amelioration a11y des labels de champs dans Conversation (#2282) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * feat: Amélioration de la lecture d'écran divers inputs * feat: Améliore le label lu par le SR > InputSuggestion * feat: Fix autofocus * fix: Corrige label * fix: nettoyage * fix: Modifie selecteurs d'input --- .../mon-entreprise/english/prerender.ts | 31 +++++++++++------- .../components/Simulation/SimulationGoals.tsx | 8 +++-- .../components/conversation/ChoicesInput.tsx | 32 +++++++++++++++---- .../components/conversation/Conversation.tsx | 17 +++++----- .../components/conversation/Explicable.tsx | 2 ++ .../conversation/InputSuggestions.tsx | 2 +- .../components/conversation/RuleInput.tsx | 4 +++ .../conversation/select/SelectTauxRisque.tsx | 5 ++- .../design-system/buttons/ButtonHelp.tsx | 8 ++++- site/source/locales/ui-en.yaml | 2 +- 10 files changed, 76 insertions(+), 35 deletions(-) diff --git a/site/cypress/integration/mon-entreprise/english/prerender.ts b/site/cypress/integration/mon-entreprise/english/prerender.ts index edec098ea..7e7470d26 100644 --- a/site/cypress/integration/mon-entreprise/english/prerender.ts +++ b/site/cypress/integration/mon-entreprise/english/prerender.ts @@ -3,42 +3,49 @@ import { fr } from '../../../support/utils' type cyType = typeof cy type Obj = Record unknown; path: string }[]> +const coutTotalSelector = 'input[id="contrat salarié . prix du travail"]' +const salaireBrutSelector = + 'input[id="contrat salarié . rémunération . brut de base"]' +const salaireNetSelector = 'input[id="contrat salarié . rémunération . net"]' +const salaireNetApresImpot = + 'input[id="contrat salarié . rémunération . net après impôt"]' + describe('Test prerender', function () { const testSimuSalaire = (cy: cyType) => { cy.contains('Mensuel') cy.contains('Annuel') cy.contains('Coût total') - cy.get('input[title="Coût total"]').should('exist') + cy.get(coutTotalSelector).should('exist') cy.contains('Salaire brut') - cy.get('input[title="Salaire brut"]').should('exist') + cy.get(salaireBrutSelector).should('exist') cy.contains('salaire médian') cy.contains('SMIC') cy.contains('Salaire net') - cy.get('input[title="Salaire net"]').should('exist') + cy.get(salaireNetSelector).should('exist') cy.contains('Salaire net après impôt') - cy.get('input[title="Salaire net après impôt"]').should('exist') + cy.get(salaireNetApresImpot).should('exist') } const testSimuSalary = () => { cy.contains('Labor cost') - cy.get('input[title="Labor cost"]').should('exist') + cy.get(coutTotalSelector).should('exist') cy.contains('Gross salary') - cy.get('input[title="Gross salary"]').should('exist') + cy.get(salaireBrutSelector).should('exist') cy.contains('median earnings') cy.contains('SMIC') cy.contains('Net salary') - cy.get('input[title="Net salary"]').should('exist') + cy.get(salaireNetSelector).should('exist') cy.contains('Net salary after income tax') - cy.get('input[title="Net salary after income tax"]').should('exist') + cy.get(salaireNetApresImpot).should('exist') } const tests = { @@ -56,16 +63,18 @@ describe('Test prerender', function () { cy.contains('Annuel') cy.contains("Chiffre d'affaires") - cy.get('input[title="Chiffre d\'affaires"]').should('exist') + cy.get('input[id="entreprise . chiffre d\'affaires"]').should('exist') cy.contains('Charges') cy.get('input[id="entreprise . charges"]').should('exist') cy.contains('Revenu net') - cy.get('input[title="Revenu net"]').should('exist') + cy.get('input[id="dirigeant . rémunération . nette"]').should('exist') cy.contains('Revenu après impôt') - cy.get('input[title="Revenu après impôt"]').should('exist') + cy.get( + 'input[id="dirigeant . rémunération . nette après impôt"]' + ).should('exist') }, path: '/simulateurs/indépendant', }, diff --git a/site/source/components/Simulation/SimulationGoals.tsx b/site/source/components/Simulation/SimulationGoals.tsx index c884609c3..d0d3d3bfa 100644 --- a/site/source/components/Simulation/SimulationGoals.tsx +++ b/site/source/components/Simulation/SimulationGoals.tsx @@ -40,11 +40,15 @@ export function SimulationGoals({ publique={publique} role="group" id="simulator-legend" - aria-labelledby="simulator-legend" + aria-labelledby="simulator-legend-label" aria-live="polite" > ({ ...theme, darkMode: true })}> -