Pour tout problème contactez-nous par mail : support@froggit.fr | La FAQ :grey_question: | Rejoignez-nous sur le Chat :speech_balloon:

Skip to content
Snippets Groups Projects
Commit b1e66f84 authored by Marc's avatar Marc
Browse files

feat: Démo TTD leap year

parent 6eb2d114
No related branches found
No related tags found
No related merge requests found
package fr.baldir.exemples.approval;
import org.junit.jupiter.api.Test;
// https://sammancoaching.org/kata_descriptions/leap_years.html
// Write a function that returns true or false depending on whether its input integer is a leap year or not.
//
//A leap year is defined as one that is divisible by 4, but is not otherwise divisible by 100 unless it is also divisible by 400.
//
//For example, 2001 is a typical common year and 1996 is a typical leap year, whereas 1900 is an atypical common year and 2000 is an atypical leap year.
//
//Acknowledgements
//This kata is described on cyber-dojo.org
class LeapYearTest {
@Test
void recent_years() {
// Démo de conception de notre rendu petit à petit
// 1️⃣ Générer les fichiers approval
// Approvals.verify("Hello World");
// 2️⃣ On approuve un premier exemple pour le format
// Approvals.verify("2001 -> false"); // Approve that
// 3️⃣ On utilise plusieurs éléments et on dessine ce qui pourrait donner plusieurs résultats
// var years = List.of(
// 2001,
// 1996,
// 1900,
// 2000);
//
// Approvals.verifyAll(years,year -> year + " -> false"); // Approve
// 4️⃣ On peut mettre à jour le rendu en y introduisant des notes
// Utilisation d'un record à la volée pour créer un tuple
// record LeapYearRender(int year, String note) {
// }
//
// var years = List.of(
// new LeapYearRender(2001, "typical case - divides by 4"),
// new LeapYearRender(1996, "typical leap year case - divides by 4"),
// new LeapYearRender(1900, "atypical - divides by 100"),
// new LeapYearRender(2000, "atypical leap year - divides by 400")
// );
// Approvals.verifyAll(years, e -> e.year + " -> false " + e.note); // Approve
//2001 -> false typical case - divides by 4
//1996 -> false typical leap year case - divides by 4
//1900 -> false atypical - divides by 100
//2000 -> false atypical leap year - divides by 400
// 5️⃣ On peut maintenant remplacer le "false" en dur par l'appel d'une fonction qui n'existe pas encore
// Approvals.verifyAll(years, e -> e.year + " -> " + leapYear(e.year) + " " + e.note); // Approve
// Au fur et à mesure que l'implémentation évolue, on se rapproche de plus en plus de notre dessin
// Je peux supprimer mon dessin
}
private boolean leapYear(int year) {
return false;
}
}
\ No newline at end of file
package fr.baldir.exemples.approval;
import org.approvaltests.Approvals;
import org.approvaltests.core.ApprovalWriter;
import org.approvaltests.core.Options;
import org.approvaltests.scrubbers.Scrubbers;
import org.junit.jupiter.api.Test;
import java.util.List;
import java.util.logging.Logger;
/*
Write a function that returns true or false depending on whether its input integer is a leap year or not.
A leap year is defined as one that is divisible by 4, but is not otherwise divisible by 100 unless it is also divisible by 400.
For example, 2001 is a typical common year and 1996 is a typical leap year, whereas 1900 is an atypical common year and 2000 is an atypical leap year.
Acknowledgements
This kata is described on cyber-dojo.org
This material is licensed with CC-BY-SA-4.0.
Attribution : Emily Bache - Samman Coaching Society
https://sammancoaching.org/kata_descriptions/leap_years.html
https://www.youtube.com/watch?v=WssiXwhmtFY
*/
class LeapYearTest {
@Test
void foo() {
Approvals.verify("Hello World");
}
}
\ No newline at end of file
public/images/approval_tdd_demo_sketch.png

43.2 KiB

0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment