Based on https://github.com/toddmotto/ac-boilerplate
Exécutez la commande npm run test
pour démarrer les tests.
Dans le fichier romanize.service.spec.ts
- Un nombre en chiffres romains se lit de gauche à droite ;
- Un même symbole n'est pas employé quatre fois de suite (sauf M) ;
- Tout symbole qui suit un symbole de valeur supérieure ou égale s’ajoute à celui-ci (exemple : 6 s'écrit VI) ;
- Tout symbole qui précède un symbole de valeur supérieure se soustrait à ce dernier ;
- I doit être retranché à V ou à X quand I est devant V ou X (ex. : 4 s'écrit IV),
- X doit être retranché à L ou à C quand X est devant L ou C (ex. : 40 s'écrit XL),
- C doit être retranché à D ou à M quand C est devant D ou M (ex. : 900 s'écrit CM),
- Par contre, ôter I de L ou de C n'est pas pratiqué (49 s'écrit XLIX et non IL ; 99 s'écrit XCIX et pas IC) ;
- Les symboles sont groupés par ordre décroissant, sauf pour les valeurs à retrancher selon la règle précédente (ex. : 1 030 s'écrit MXXX et non XXXM qui est une des façons de représenter 970note 1).
994 s’écrit CMXCIV et se décompose comme suit: 100 soustrait à 1000 (900) + 10 soustrait à 100 (90) + 1 soustrait à 5 (4) = 994.
49 s’écrit XLIX pour 10 soustrait à 50 (40) + 1 soustrait à 10 (9) = 49
308 s’écrit CCCVIII pour 100+100+100 (300) + 5 + 1+1+1 (3) = 308
Exemples: https://fr.wikipedia.org/wiki/Num%C3%A9ration_romaine#Exemples
Dans le fichier date.pipe.spec.ts
- Le pipe date avec la locale "en" doit renvoyer une date au format "MMM dd, yyyy" (exemple: Sep 21, 2019) par défaut
- Si le pipe reçois un string de formatage en paramètren il soit retourner la date dans ce bon format (exemple de format: 'dd/MM/yyyy')
Dans le fichier share-calculator.component.spec.ts
- L'incrémentation se fait toujours de 1
- La décrémentation se fait toujours de 1
- Il ne doit pas être possible d'incrémenter au dessus du maximum
- Il ne doit pas être possible de décrémenter en dessous du minimum (1 et non configurable)
- Il ne doit pas être possible ni d'incrémenter ni de décrémenter si le maximum est mis à 1 ou 0
Dans le fichier pizza-form.component.spec.ts
- Le formulaire ne doit pas être valide si aucun nom n'a été entré
- Le formulaire doit être valide si un nom est entré
- Le bouton "create" doit être affiché s'il s'agit d'une création (pas d'ID)
- Le bouton "update" doit être affiché s'il s'agit d'une modification (avec ID)
Dans le fichier pizzas.service.spec.ts
- L'information ne doit pas être altérée entre le retour du serveur et le retour de la fonction
Dans le fichier products.component.spec.ts
- Une navigation vers le détail d'une pizza doit être effectuée au click sur celle-ci
Dans le fichier product-item.component.spec.ts
- Mise à jour
- La pizza correspondant à l'id contenu en paramètre de l'url doit être chargé en même temps que l'application
- Création
- Aucun appel serveur pour récupérer les pizzas ne doit être fait
Dans le fichier pizzas-state.spec.ts
- Le store doit automatiquement charger la liste des toppings
- Si l'utilisateur répond "oui" à la fenètre de confirmation, une requête de suppression au serveur doit être effectuée
- Si l'utilisateur répond "non" à la fenètre de confirmation, aucune requête de suppression au serveur ne doit être effectuée
- S'il y a une demande de mise à jour, une requête serveur de mise à jour doit être effectuée
- S'il y a une demande de création, une requête serveur de création doit être effectuée
Dans le fichier products.component.spec.ts
- Aucun item de doit apparaitre tant que le service n'a pas répondu