Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[TECH] Formater le code de pix-certif avec Prettier. #3935

Merged
merged 7 commits into from
Jan 14, 2022

Conversation

octo-topi
Copy link
Contributor

@octo-topi octo-topi commented Jan 12, 2022

🎄 Problème

Voir #3494
Pix-certif est la seule application ayant passé aux travers des mailles du filet.

🎁 Solution

Voir #3557 pour la version front

Le test E2E suivant échoue
cy.get('.app-modal-body__contextual').should('contain', `La case "Écran de fin du test vu" n'est pas cochée pour ${endTestForgottenCount} candidat(s)`);
Alors que contains ne prend pas en compte les newline (depuis la v4, et on est en v5.6.0) 🤔

image
https://dashboard.cypress.io/projects/g2rfqp/runs/19472/test-results/245b9aa4-ee71-4996-b319-00d5ccf720c7

🌟 Remarques

Remplacement de ember-cli-template-lint (déprécié) par ember-template-lint

Il y a aussi des corrections hbs hors formatage (peut-être dues au décalage entre ember-cli-template-lint et template-lint) , que j'ai désactivées pour l'instant mais mériteraient d'être traitées.

J'ai également supprimé le preset octane, car il n'est plus référencé.

Déplacement de la librairie ember-api-action dans les devDependencies pour suivre la convention.

🎅 Pour tester

Vérifier que la CI passe.

@pix-service
Copy link
Contributor

@octo-topi octo-topi force-pushed the tech-format-code-prettier-certif branch 6 times, most recently from d2d18de to efe5ff4 Compare January 12, 2022 15:09
@MathieuGilet MathieuGilet force-pushed the tech-format-code-prettier-certif branch from b38af21 to 2086065 Compare January 13, 2022 15:58
@MathieuGilet
Copy link
Contributor

MathieuGilet commented Jan 13, 2022

Pour comprendre la correction du test Cypress il faut comprendre que le code

<p class="app-modal-body__contextual">
    La case "Écran de fin du test vu" n'est pas cochée pour
    {{this.uncheckedHasSeenEndTestScreenCount}} 
    candidat(s)</p>

Va produire le HTML suivant

<p class="app-modal-body__contextual">
    " La case "Écran de fin du test vu" n'est pas cochée pour "
    "1" 
    " candidat(s)"
</p>

Il y a deux problèmes ici:

  • quand on cherche à vérifier que l'élément p contient bien le texte attendu, la fonction should('contain', ...) de Cypress ne gère pas le "multiligne". Par contre, la fonction contains oui depuis la version 4.0 (cypress-io/cypress@bd66f35?diff=split&w=0#diff-07515e1fa9fc3b5038f81de7bc28a5204762f56be2d736f6928a4009c590625eR481)
  • Le deuxième problème est l'espace présent en début de chaîne (avant "La case...") qui n'est pas retiré par la fonction normalizeWhitespaces. Pour corriger ça, j'ai remonté la première partie de la chaîne de caractère "La case "Écran de fin du test vu" n'est pas cochée pour" qui semble être accepté par le linter.

@octo-topi octo-topi force-pushed the tech-format-code-prettier-certif branch from 39dfc42 to f498563 Compare January 14, 2022 09:21
@pix-service-auto-merge pix-service-auto-merge force-pushed the tech-format-code-prettier-certif branch from f498563 to 25faeb5 Compare January 14, 2022 09:22
@pix-service-auto-merge pix-service-auto-merge deleted the tech-format-code-prettier-certif branch January 14, 2022 09:36
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants