Added getnCenturyValue with tests

This commit is contained in:
BroodjeAap 2020-09-27 14:24:18 +02:00
parent 88ddf6f3a8
commit ca7673dbd5
2 changed files with 108 additions and 0 deletions

View file

@ -49,4 +49,33 @@ class DayCalculator {
}
}
}
static int getCenturyValue(int year){
// Returns the century code for the year
// TODO: Implement Julian calendar?
year = (year / 100).floor() * 100;
switch(year){
case 1700:{
return 4;
}
case 1800:{
return 2;
}
case 1900:{
return 0;
}
case 2000:{
return 6;
}
case 2100:{
return 4;
}
case 2200:{
return 2;
}
default:{ //2300
return 0;
}
}
}
}

View file

@ -54,4 +54,83 @@ void main() {
expect(DayCalculator.getMonthValue(11), equals(5));
});
});
group("DayCalculator getCenturyValue()", () {
group("1700s", () {
test("1700", (){
expect(DayCalculator.getCenturyValue(1700), equals(4));
});
test("1799", (){
expect(DayCalculator.getCenturyValue(1799), equals(4));
});
test("1777", (){
expect(DayCalculator.getCenturyValue(1777), equals(4));
});
});
group("1800s", () {
test("1800", (){
expect(DayCalculator.getCenturyValue(1800), equals(2));
});
test("1899", (){
expect(DayCalculator.getCenturyValue(1899), equals(2));
});
test("1843", (){
expect(DayCalculator.getCenturyValue(1843), equals(2));
});
});
group("1900s", () {
test("1900", (){
expect(DayCalculator.getCenturyValue(1900), equals(0));
});
test("1999", (){
expect(DayCalculator.getCenturyValue(1999), equals(0));
});
test("1938", (){
expect(DayCalculator.getCenturyValue(1943), equals(0));
});
});
group("2000s", () {
test("2000", (){
expect(DayCalculator.getCenturyValue(2000), equals(6));
});
test("2099", (){
expect(DayCalculator.getCenturyValue(2099), equals(6));
});
test("2064", (){
expect(DayCalculator.getCenturyValue(2064), equals(6));
});
});
group("2100s", () {
test("2100", (){
expect(DayCalculator.getCenturyValue(2100), equals(4));
});
test("2199", (){
expect(DayCalculator.getCenturyValue(2199), equals(4));
});
test("2158", (){
expect(DayCalculator.getCenturyValue(2158), equals(4));
});
});
group("2200s", () {
test("2200", (){
expect(DayCalculator.getCenturyValue(2200), equals(2));
});
test("2299", (){
expect(DayCalculator.getCenturyValue(2299), equals(2));
});
test("2249", (){
expect(DayCalculator.getCenturyValue(2249), equals(2));
});
});
group("2300s", () {
test("2300", (){
expect(DayCalculator.getCenturyValue(2300), equals(0));
});
test("2399", (){
expect(DayCalculator.getCenturyValue(2399), equals(0));
});
test("2304", (){
expect(DayCalculator.getCenturyValue(23049), equals(0));
});
});
});
}