-
Notifications
You must be signed in to change notification settings - Fork 0
/
range_test.go
103 lines (86 loc) · 2.1 KB
/
range_test.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
/*
Copyright © Portalnesia <[email protected]>
*/
package saka
import (
"testing"
"github.com/golang-module/carbon"
)
func TestDateNil(t *testing.T) {
d1 := carbon.CreateFromDate(2023, 8, 27)
_, err := NewRange(nil, d1)
if err == nil {
t.Error("Error not shown")
} else if err.Error() != "date1 and date2 cannot be nil" {
t.Error("Error message invalid")
}
}
func TestReverseDateRange(t *testing.T) {
d1 := carbon.CreateFromDate(2023, 8, 27)
d2 := carbon.CreateFromDate(2023, 8, 31)
saka, err := NewRange(d2, d1)
if err != nil {
t.Error(err)
}
rahinan := saka.ListAllRahinan()
if len(rahinan) != 2 {
t.Error("Rahinan failed")
}
}
func TestRangeListAllRahinan(t *testing.T) {
d1 := carbon.CreateFromDate(2023, 8, 27)
d2 := carbon.CreateFromDate(2023, 8, 31)
saka, err := NewRange(d1, d2)
if err != nil {
t.Error(err)
}
rahinan := saka.ListAllRahinan()
if len(rahinan) != 2 {
t.Error("Rahinan failed")
}
saka, err = NewRange(d2, d1)
if err != nil {
t.Error(err)
}
rahinan = saka.ListAllRahinan()
if len(rahinan) != 2 {
t.Error("Rahinan failed")
}
}
func TestRangeListByDate(t *testing.T) {
d1 := carbon.CreateFromDate(2023, 8, 27)
d2 := carbon.CreateFromDate(2023, 8, 31)
saka, err := NewRange(d1, d2)
if err != nil {
t.Error(err)
}
rahinan := saka.ListByDate()
for i, r := range rahinan {
if i == 0 {
if r.Saka.Carbon.DayOfMonth() != d1.DayOfMonth() {
t.Errorf("First date not same: %s", r.Saka.Carbon.ToString())
}
if r.Rahinan[0].ID != 28 {
t.Errorf("First rahinan not same: %s", r.Rahinan[0].Name)
}
}
if i == len(rahinan)-1 {
if r.Saka.Carbon.DayOfMonth() != d2.DayOfMonth() {
t.Errorf("Last date not same: %s", r.Saka.Carbon.ToString())
}
if r.Rahinan[0].ID != 29 {
t.Errorf("Last rahinan not same: %s", r.Rahinan[0].Name)
}
}
}
}
func TestMaxRangeError(t *testing.T) {
d1 := carbon.CreateFromDate(2023, 8, 5)
d2 := carbon.CreateFromDate(2023, 8, 31)
_, err := NewRange(d1, d2)
if err == nil {
t.Error("Error not shown")
} else if err.Error() != "maximum range is 7 days" {
t.Error("Error message invalid")
}
}