all repos

clerk @ 31438155a763f30e08c28774a984e3198c9bd193

missing tooling for ledger/hledger

clerk/journal/ast/ast_test.go (view raw)

Oleksandr Smirnov Oleksandr Smirnov
olexsmir@gmail.com
feat: config (#6), 1 month ago
1
package ast
2
3
import "testing"
4
5
func TestDateCompare(t *testing.T) {
6
	jan1 := Date{Year: 2024, Month: 1, Day: 1}
7
	jan2 := Date{Year: 2024, Month: 1, Day: 2}
8
	feb1 := Date{Year: 2024, Month: 2, Day: 1}
9
	nextYear := Date{Year: 2025, Month: 1, Day: 1}
10
11
	tests := map[[2]Date]int{
12
		{jan1, jan1}:     0,
13
		{jan2, jan1}:     1,
14
		{jan1, jan2}:     -1,
15
		{feb1, jan2}:     1,
16
		{jan2, feb1}:     -1,
17
		{nextYear, feb1}: 1,
18
		{feb1, nextYear}: -1,
19
	}
20
	for dates, want := range tests {
21
		if got := dates[0].Compare(dates[1]); got != want {
22
			t.Errorf("Compare(%v, %v) = %d, want %d", dates[0], dates[1], got, want)
23
		}
24
	}
25
}