Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions .eslintrc.cjs
Original file line number Diff line number Diff line change
Expand Up @@ -23,5 +23,8 @@ module.exports = {
],
parserOptions: {
ecmaVersion: 'latest'
},
"rules": {
"vue/multi-word-component-names": "off"
}
}
22 changes: 22 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -28,3 +28,25 @@ coverage
*.sw?

*.tsbuildinfo

#amplify-do-not-edit-begin
amplify/\#current-cloud-backend
amplify/.config/local-*
amplify/logs
amplify/mock-data
amplify/mock-api-resources
amplify/backend/amplify-meta.json
amplify/backend/.temp
build/
dist/
node_modules/
aws-exports.js
awsconfiguration.json
amplifyconfiguration.json
amplifyconfiguration.dart
amplify-build-config.json
amplify-gradle-config.json
amplifytools.xcconfig
.secret-*
**.sample
#amplify-do-not-edit-end
145 changes: 145 additions & 0 deletions Quizzypeak_quoi-tester_Partie-1_final.txt
Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Je vais être généreux ici, mais vous avez pas mal de tests que je ne peux pas compter (voir explications ci-bas). Vous avez tout de même plus de 22 bons tests, donc je vous donne vos points, mais je ne serai probablement pas généreux comme ça à l'examen.

Analyze: 5/5

Original file line number Diff line number Diff line change
@@ -0,0 +1,145 @@
Analyse finale
Projet : QuizzyPeak

Partie 1

Tests réalisés:
• Quand la catégorie est sélectionné on affiche le tableau des scores
Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

seulement s'il y a des scores de disponible

Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ah ok, je vois juste en dessous. À l'examen, je vais être plus strict et vous devez mettre la précision pour cette ligne.

• Quand il n'y a pas de score a affiché pour la catégorie un message particulier s'affiche
• Quand il n'y a pas de catégorie sélectionné un message particulier s'affiche
Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

-1 Cela n'est pas clair. C'est quoi le message? Et par défaut, il n'y a pas de catégorie de sélectionner et il n'y a pas de message. Est-ce que vous vouliez dire après avoir cliqué sur le bouton?

• Quand le quiz commence la bar de progression affiche la bonne valeur
• Quand on passe a la question suivant la bar de progression affiche la bonne valeur
• Quand on complete le quiz la bar de progression affiche la bonne valeur
• Quand on est a l'état initial le timer affiche la bonne valeur
• Quand le temps diminue le timer affiche la bonne valeur
• Quand le composant est unmounted le timer s'arrete
Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

-1 Ici, nous ne devrions pas savoir les détails techniques.

• Quand on appelle la méthode stop le timer s'arrete
Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

-1 même chose

• Quand on passe a une question, la question et les choix s'affichent correctement
• Quand un choix de réponse est sélectionné un evenement est émis
Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

-1 même chose

• Quand le quiz est complété un événement est émis
Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

-1 même chose


Autres test potentiels trouvé initialement
• Quand on charge la page les images s'affichent bien

Tester les inputs du quiz
• Quand un clique sur l'input name le champs devient selectionne avec une bordure
Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

-1 c'est une fonctionnalité de base de HTML. On ne test pas ça.

• Quand on clique sur l'input name le curseur se place au debut du champs
Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

-1 même chose

• Quand on clique sur un menu deroulant il s'affiche
Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

-1 même chose

• Quand on clique sur start sans avoir rempli tous les champs une alerte apparait

Tester le bouton start quiz
• Quand on clique sur le bouton start on est amené a la page de quiz
• Quand on est sur la page quiz le timer affiche le bon temps selectionné
Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

-1 c'etait deja testé plus haut

• Quand on est sur la page quiz le nombre de questions affichés est celui sélectionné
• Quand on est sur la page quiz la bar de progres affiche la bonne valeur
Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

-1 même chose

• Quand on complete le quiz la section quiz result s'affiche correctement
 Le score
 La question
 La reponse
 Le bouton restart quiz
• Quand on clique sur le bouton restart quiz nous sommes amené a la page principale

Tester le bouton edit questions
• Quand on clique sur le bouton edit nous sommes amené a la page edit

Tester la page edit
• Quand on clique sur le bouton back nous sommes ramené sur la page principale
• Quand on clique le champs New question text un encadré s'affiche
Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

-1 HTML de base

• Quand on clique le champs Select a category le menu deroulant s'affiche
Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

-1 HTML de base

• Quand on clique le champs Choice une bordure s'affiche
Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

-1 HTML de base

• Quand on clique le bouton add choice un champs Choice s'affiche
• Quand on clique le champs Correct Answer une bordure s'affiche
Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

-1 HTML de base

• Quand on clique le bouton add question une alerte confirme l'ajout
• Quand on clique le bouton Add question une question est ajouté au bas de la page
• Quand on clique le bouton delete sur une question un modal de confirmation s'affiche
• Quand on clique ok sur le modal la question est supprimé
• Quand on clique anulé sur le modal la question n'est pas supprimé
• Quand on clique un champs d'input sur une question il devient encadré en noir
Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

-1 HTML de base

• Quand on clique sur le champs menu deroulant de la category d'une question la liste de category s'affiche
Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

-1 HTML de base

• Quand on clique sur le bouton Save Questions un modal de confirmation apparait

Tester l’affichage de la section leaderboard
• Quand on complete un test les bonnes valeurs s'affichent dans la section leaderboard
 Category
 Nom
 Score
• Quand on complete un test dans une autre Category le resultat s'affiche pour la categorie en cours

Failles potentielles et bugs

Failles de performance :

• La page ne permet pas la restoration du cache
• Les script javscript pourait etre minifier pour de meilleures performances
• Les images devraient être au format webP plutot que jpeg ou png
• Les images pourrait spécifié une hauteur ou une largeur
• L'image du logo est trop grosse/lourde
• Utiliser le lazy loading pour eviter de charger des scripts javascript qui ne sont pas utiliser tout de suite
• Eviter d'utiliser des scripts javscript qui ne sont pas jour (onloadwff.js:71, h1-check.js:107, web-client-content-script.js:2)

Faille d'accessibilité :

• Les couleurs d'arrière-plan et de premier plan ne sont pas suffisamment contrastées.
• Certains éléments ne sont associés à aucun élément de libellé.
• Les éléments d'en-tête ne sont pas classés séquentiellement par ordre décroissant.

Failles de sécurité :

• Garantir l'efficacité de la CSP contre les attaques XSS.

Autres failles :

• Le document ne contient pas d'attribut "meta description" (BONNES PRATIQUES RELATIVES AU CONTENU).

Bugs

• Quand le timer s'arrete on peut continuer a repondre au questionnaire
• Certaines categories nom pas le bon nombre de question et donc le nombre de question choisit pour le quiz ne correspond pas au nombre choisit (ex. categorie art a 5 questions, le quiz n'aura que 3 questions)
• On peut continuer de répondre a la dernière question du quiz, meme lorsque le quiz est terminé
• Lorsque l'on réponde a la dernière question du quiz apres l'avoir complété le score est modifié et peut meme passé au dessus de 100% (ex. categorie art, le résultat pourra passé a 4/3 de résultat final)














































17 changes: 17 additions & 0 deletions amplify/.config/project-config.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
{
"providers": [
"awscloudformation"
],
"projectName": "quizly",
"version": "3.1",
"frontend": "javascript",
"javascript": {
"framework": "vue",
"config": {
"SourceDir": "src",
"DistributionDir": "dist",
"BuildCommand": "npm.cmd run-script build",
"StartCommand": "npm.cmd run-script serve"
}
}
}
22 changes: 22 additions & 0 deletions amplify/backend/api/quizly/cli-inputs.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
{
"version": 1,
"serviceConfiguration": {
"apiName": "quizly",
"serviceName": "AppSync",
"defaultAuthType": {
"mode": "API_KEY",
"keyDescription": "api key description",
"expirationTime": 30
},
"additionalAuthTypes": [
{
"mode": "AWS_IAM"
}
],
"conflictResolution": {
"defaultResolutionStrategy": {
"type": "NONE"
}
}
}
}
5 changes: 5 additions & 0 deletions amplify/backend/api/quizly/parameters.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
{
"AppSyncApiName": "quizly",
"DynamoDBBillingMode": "PAY_PER_REQUEST",
"DynamoDBEnableServerSideEncryption": false
}
2 changes: 2 additions & 0 deletions amplify/backend/api/quizly/resolvers/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
Any resolvers that you add in this directory will override the ones automatically generated by Amplify CLI and will be directly copied to the cloud.
For more information, visit [https://docs.amplify.aws/cli/graphql-transformer/resolvers](https://docs.amplify.aws/cli/graphql-transformer/resolvers)
7 changes: 7 additions & 0 deletions amplify/backend/api/quizly/schema.graphql
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
type Questions @model @auth(rules: [{allow: public}]) {
id: ID!
text: String
choices: [String]
answer: String
category: String
}
58 changes: 58 additions & 0 deletions amplify/backend/api/quizly/stacks/CustomResources.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
{
"AWSTemplateFormatVersion": "2010-09-09",
"Description": "An auto-generated nested stack.",
"Metadata": {},
"Parameters": {
"AppSyncApiId": {
"Type": "String",
"Description": "The id of the AppSync API associated with this project."
},
"AppSyncApiName": {
"Type": "String",
"Description": "The name of the AppSync API",
"Default": "AppSyncSimpleTransform"
},
"env": {
"Type": "String",
"Description": "The environment name. e.g. Dev, Test, or Production",
"Default": "NONE"
},
"S3DeploymentBucket": {
"Type": "String",
"Description": "The S3 bucket containing all deployment assets for the project."
},
"S3DeploymentRootKey": {
"Type": "String",
"Description": "An S3 key relative to the S3DeploymentBucket that points to the root\nof the deployment directory."
}
},
"Resources": {
"EmptyResource": {
"Type": "Custom::EmptyResource",
"Condition": "AlwaysFalse"
}
},
"Conditions": {
"HasEnvironmentParameter": {
"Fn::Not": [
{
"Fn::Equals": [
{
"Ref": "env"
},
"NONE"
]
}
]
},
"AlwaysFalse": {
"Fn::Equals": ["true", "false"]
}
},
"Outputs": {
"EmptyOutput": {
"Description": "An empty output. You may delete this if you have at least one resource above.",
"Value": ""
}
}
}
5 changes: 5 additions & 0 deletions amplify/backend/api/quizly/transform.conf.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
{
"Version": 5,
"ElasticsearchWarning": true,
"ResolverConfig": {}
}
25 changes: 25 additions & 0 deletions amplify/backend/backend-config.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
{
"api": {
"quizly": {
"dependsOn": [],
"output": {
"authConfig": {
"additionalAuthenticationProviders": [
{
"authenticationType": "AWS_IAM"
}
],
"defaultAuthentication": {
"apiKeyConfig": {
"apiKeyExpirationDays": 30,
"description": "api key description"
},
"authenticationType": "API_KEY"
}
}
},
"providerPlugin": "awscloudformation",
"service": "AppSync"
}
}
}
10 changes: 10 additions & 0 deletions amplify/backend/tags.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
[
{
"Key": "user:Stack",
"Value": "{project-env}"
},
{
"Key": "user:Application",
"Value": "{project-name}"
}
]
9 changes: 9 additions & 0 deletions amplify/backend/types/amplify-dependent-resources-ref.d.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
export type AmplifyDependentResourcesAttributes = {
"api": {
"quizly": {
"GraphQLAPIEndpointOutput": "string",
"GraphQLAPIIdOutput": "string",
"GraphQLAPIKeyOutput": "string"
}
}
}
Loading