update: cleanup

This commit is contained in:
Lucas F. 2026-01-20 19:03:28 -03:00
parent a0645cb0d1
commit f0115a15b9

View file

@ -5,6 +5,9 @@ const Context = @import("context.zig").Context;
const RelativeDelta = @import("delta.zig").RelativeDelta; const RelativeDelta = @import("delta.zig").RelativeDelta;
test "relativedelta rigoroso - meses" { test "relativedelta rigoroso - meses" {
std.debug.print("____________________________________________________\n", .{});
std.debug.print("1 - context set amigável e get com ponto\n", .{});
const a = try Time.parse("2025-03-31"); const a = try Time.parse("2025-03-31");
const b = try Time.parse("2025-01-31"); const b = try Time.parse("2025-01-31");
const delta = a.subRelative(b); const delta = a.subRelative(b);
@ -17,6 +20,9 @@ test "relativedelta rigoroso - meses" {
} }
test "relativedelta - overflow de dia" { test "relativedelta - overflow de dia" {
std.debug.print("____________________________________________________\n", .{});
std.debug.print("2 - relativedelta - overflow de dia\n", .{});
const jan31 = try Time.parse("2023-01-31"); const jan31 = try Time.parse("2023-01-31");
const mar01 = try Time.parse("2023-03-01"); const mar01 = try Time.parse("2023-03-01");
@ -27,6 +33,9 @@ test "relativedelta - overflow de dia" {
} }
test "bissexto: 2021-02-28 - 2020-02-29" { test "bissexto: 2021-02-28 - 2020-02-29" {
std.debug.print("____________________________________________________\n", .{});
std.debug.print("3 - bissexto: 2021-02-28 - 2020-02-29\n", .{});
const a = try Time.parse("2021-02-28"); const a = try Time.parse("2021-02-28");
const b = try Time.parse("2020-02-29"); const b = try Time.parse("2020-02-29");
const delta = a.subRelative(b); const delta = a.subRelative(b);
@ -36,6 +45,9 @@ test "bissexto: 2021-02-28 - 2020-02-29" {
} }
test "bissexto: 2021-03-01 - 2020-02-29" { test "bissexto: 2021-03-01 - 2020-02-29" {
std.debug.print("____________________________________________________\n", .{});
std.debug.print("4 - bissexto: 2021-03-01 - 2020-02-29\n", .{});
const a = try Time.parse("2021-03-01"); const a = try Time.parse("2021-03-01");
const b = try Time.parse("2020-02-29"); const b = try Time.parse("2020-02-29");
const delta = a.subRelative(b); const delta = a.subRelative(b);
@ -45,6 +57,9 @@ test "bissexto: 2021-03-01 - 2020-02-29" {
} }
test "bissexto: 2021-02-27 - 2020-02-29" { test "bissexto: 2021-02-27 - 2020-02-29" {
std.debug.print("____________________________________________________\n", .{});
std.debug.print("5 - bissexto: 2021-02-27 - 2020-02-29\n", .{});
const a = try Time.parse("2021-02-27"); const a = try Time.parse("2021-02-27");
const b = try Time.parse("2020-02-29"); const b = try Time.parse("2020-02-29");
const delta = a.subRelative(b); const delta = a.subRelative(b);
@ -54,6 +69,9 @@ test "bissexto: 2021-02-27 - 2020-02-29" {
} }
test "bissexto reverso: 2020-02-29 - 2021-02-28" { test "bissexto reverso: 2020-02-29 - 2021-02-28" {
std.debug.print("____________________________________________________\n", .{});
std.debug.print("6 - bissexto reverso: 2020-02-29 - 2021-02-28\n", .{});
const a = try Time.parse("2020-02-29"); const a = try Time.parse("2020-02-29");
const b = try Time.parse("2021-02-28"); const b = try Time.parse("2021-02-28");
const delta = a.subRelative(b); const delta = a.subRelative(b);
@ -63,6 +81,9 @@ test "bissexto reverso: 2020-02-29 - 2021-02-28" {
} }
test "addRelative: anos normais (não bissexto)" { test "addRelative: anos normais (não bissexto)" {
std.debug.print("____________________________________________________\n", .{});
std.debug.print("7 - addRelative: anos normais (não bissexto)\n", .{});
// 2023 não é bissexto // 2023 não é bissexto
const base = try Time.parse("2023-06-15"); const base = try Time.parse("2023-06-15");
const expected = try Time.parse("2026-06-15"); const expected = try Time.parse("2026-06-15");
@ -77,6 +98,9 @@ test "addRelative: anos normais (não bissexto)" {
} }
test "addRelative: anos normais com overflow de dia" { test "addRelative: anos normais com overflow de dia" {
std.debug.print("____________________________________________________\n", .{});
std.debug.print("8 - addRelative: anos normais com overflow de dia\n", .{});
// Janeiro 31 + 2 anos deve ir para 31/jan (2025 não bissexto) // Janeiro 31 + 2 anos deve ir para 31/jan (2025 não bissexto)
const base = try Time.parse("2023-01-31"); const base = try Time.parse("2023-01-31");
const expected = try Time.parse("2025-01-31"); const expected = try Time.parse("2025-01-31");
@ -91,6 +115,9 @@ test "addRelative: anos normais com overflow de dia" {
} }
test "addRelative: de 29/fev bissexto + 1 ano (vai para 28/fev)" { test "addRelative: de 29/fev bissexto + 1 ano (vai para 28/fev)" {
std.debug.print("____________________________________________________\n", .{});
std.debug.print("9 - addRelative: de 29/fev bissexto + 1 ano (vai para 28/fev)\n", .{});
// 2020 foi bissexto +1 ano deve ir para 2021-02-28 (não bissexto) // 2020 foi bissexto +1 ano deve ir para 2021-02-28 (não bissexto)
const base = try Time.parse("2020-02-29"); const base = try Time.parse("2020-02-29");
const expected = try Time.parse("2021-02-28"); const expected = try Time.parse("2021-02-28");
@ -105,6 +132,9 @@ test "addRelative: de 29/fev bissexto + 1 ano (vai para 28/fev)" {
} }
test "addRelative: de 29/fev bissexto + 4 anos (permanece 29/fev)" { test "addRelative: de 29/fev bissexto + 4 anos (permanece 29/fev)" {
std.debug.print("____________________________________________________\n", .{});
std.debug.print("10 - addRelative: de 29/fev bissexto + 4 anos (permanece 29/fev)\n", .{});
// 2020 2024 (ambos bissextos) // 2020 2024 (ambos bissextos)
const base = try Time.parse("2020-02-29"); const base = try Time.parse("2020-02-29");
const expected = try Time.parse("2024-02-29"); const expected = try Time.parse("2024-02-29");
@ -119,6 +149,9 @@ test "addRelative: de 29/fev bissexto + 4 anos (permanece 29/fev)" {
} }
test "addRelative: de 29/fev + 1 ano + 1 mês (vai para março)" { test "addRelative: de 29/fev + 1 ano + 1 mês (vai para março)" {
std.debug.print("____________________________________________________\n", .{});
std.debug.print("11 - addRelative: de 29/fev + 1 ano + 1 mês (vai para março)\n", .{});
// 2020-02-29 + 1 ano 2021-02-28 + 1 mês 2021-03-28 // 2020-02-29 + 1 ano 2021-02-28 + 1 mês 2021-03-28
const base = try Time.parse("2020-02-29"); const base = try Time.parse("2020-02-29");
const expected = try Time.parse("2021-03-28"); const expected = try Time.parse("2021-03-28");
@ -133,6 +166,9 @@ test "addRelative: de 29/fev + 1 ano + 1 mês (vai para março)" {
} }
test "addRelative: meses com overflow (31 → 28/30)" { test "addRelative: meses com overflow (31 → 28/30)" {
std.debug.print("____________________________________________________\n", .{});
std.debug.print("12 - addRelative: meses com overflow (31 → 28/30)\n", .{});
const cases = [_]struct { base: []const u8, months: i32, expected: []const u8 }{ const cases = [_]struct { base: []const u8, months: i32, expected: []const u8 }{
.{ .base = "2023-01-31", .months = 1, .expected = "2023-02-28" }, // não bissexto .{ .base = "2023-01-31", .months = 1, .expected = "2023-02-28" }, // não bissexto
.{ .base = "2024-01-31", .months = 1, .expected = "2024-02-29" }, // bissexto .{ .base = "2024-01-31", .months = 1, .expected = "2024-02-29" }, // bissexto
@ -156,6 +192,9 @@ test "addRelative: meses com overflow (31 → 28/30)" {
} }
test "addRelative: combinação anos + meses + dias (bissexto envolvido)" { test "addRelative: combinação anos + meses + dias (bissexto envolvido)" {
std.debug.print("____________________________________________________\n", .{});
std.debug.print("13 - addRelative: combinação anos + meses + dias (bissexto envolvido)\n", .{});
// 2024-02-29 + 1 ano + 2 meses + 3 dias // 2024-02-29 + 1 ano + 2 meses + 3 dias
// 2025-02-28 + 2 meses 2025-04-28 + 3 dias 2025-05-01 // 2025-02-28 + 2 meses 2025-04-28 + 3 dias 2025-05-01
const base = try Time.parse("2024-02-29"); const base = try Time.parse("2024-02-29");
@ -171,6 +210,9 @@ test "addRelative: combinação anos + meses + dias (bissexto envolvido)" {
} }
test "addRelative: delta zero não altera data" { test "addRelative: delta zero não altera data" {
std.debug.print("____________________________________________________\n", .{});
std.debug.print("14 - addRelative: delta zero não altera data\n", .{});
const base = try Time.parse("2025-07-20"); const base = try Time.parse("2025-07-20");
const delta = RelativeDelta.init(.{}); const delta = RelativeDelta.init(.{});
const result = base.addRelative(delta); const result = base.addRelative(delta);