@@ -102,27 +102,46 @@ func TestDateAndSlugFromBaseFilename(t *testing.T) {
102
102
date string
103
103
slug string
104
104
}{
105
- {"page.md" , "0001-01-01" , "" },
106
- {"2012-09-12-page.md" , "2012-09-12" , "page" },
107
- {"2018-02-28-page.md" , "2018-02-28" , "page" },
108
- {"2018-02-28_page.md" , "2018-02-28" , "page" },
109
- {"2018-02-28 page.md" , "2018-02-28" , "page" },
110
- {"2018-02-28page.md" , "2018-02-28" , "page" },
111
- {"2018-02-28-.md" , "2018-02-28" , "" },
112
- {"2018-02-28-.md" , "2018-02-28" , "" },
113
- {"2018-02-28.md" , "2018-02-28" , "" },
114
- {"2018-02-28-page" , "2018-02-28" , "page" },
115
- {"2012-9-12-page.md" , "0001-01-01" , "" },
116
- {"asdfasdf.md" , "0001-01-01" , "" },
105
+ // date
106
+ {"2025-07-04 page.md" , "2025-07-04T00:00:00+02:00" , "page" },
107
+ {"2025-07-04-page.md" , "2025-07-04T00:00:00+02:00" , "page" },
108
+ {"2025-07-04_page.md" , "2025-07-04T00:00:00+02:00" , "page" },
109
+ {"2025-07-04page.md" , "2025-07-04T00:00:00+02:00" , "page" },
110
+ {"2025-07-04" , "2025-07-04T00:00:00+02:00" , "" },
111
+ {"2025-07-04-.md" , "2025-07-04T00:00:00+02:00" , "" },
112
+ {"2025-07-04.md" , "2025-07-04T00:00:00+02:00" , "" },
113
+ // date and time
114
+ {"2025-07-04-22-17-13 page.md" , "2025-07-04T22:17:13+02:00" , "page" },
115
+ {"2025-07-04-22-17-13-page.md" , "2025-07-04T22:17:13+02:00" , "page" },
116
+ {"2025-07-04-22-17-13_page.md" , "2025-07-04T22:17:13+02:00" , "page" },
117
+ {"2025-07-04-22-17-13page.md" , "2025-07-04T22:17:13+02:00" , "page" },
118
+ {"2025-07-04-22-17-13" , "2025-07-04T22:17:13+02:00" , "" },
119
+ {"2025-07-04-22-17-13-.md" , "2025-07-04T22:17:13+02:00" , "" },
120
+ {"2025-07-04-22-17-13.md" , "2025-07-04T22:17:13+02:00" , "" },
121
+ // date and time with other separators between the two
122
+ {"2025-07-04T22-17-13.md" , "2025-07-04T22:17:13+02:00" , "" },
123
+ {"2025-07-04 22-17-13.md" , "2025-07-04T22:17:13+02:00" , "" },
124
+ // no date or time
125
+ {"something.md" , "0001-01-01T00:00:00+00:00" , "" }, // 9 chars
126
+ {"some-thing-.md" , "0001-01-01T00:00:00+00:00" , "" }, // 10 chars
127
+ {"somethingsomething.md" , "0001-01-01T00:00:00+00:00" , "" }, // 18 chars
128
+ {"something-something.md" , "0001-01-01T00:00:00+00:00" , "" }, // 19 chars
129
+ {"something-something-else.md" , "0001-01-01T00:00:00+00:00" , "" }, // 27 chars
130
+ // invalid
131
+ {"2025-07-4-page.md" , "0001-01-01T00:00:00+00:00" , "" },
132
+ {"2025-07-4-22-17-13-page.md" , "0001-01-01T00:00:00+00:00" , "" },
133
+ {"asdfasdf.md" , "0001-01-01T00:00:00+00:00" , "" },
117
134
}
118
135
136
+ location , err := time .LoadLocation ("Europe/Oslo" )
137
+ if err != nil {
138
+ t .Error ("Unable to determine location from given time zone" )
139
+ }
119
140
for _ , test := range tests {
120
- expecteFDate , err := time .Parse ("2006-01-02" , test .date )
121
- c .Assert (err , qt .IsNil )
122
141
123
- gotDate , gotSlug := dateAndSlugFromBaseFilename (time . UTC , test .name )
142
+ gotDate , gotSlug := dateAndSlugFromBaseFilename (location , test .name )
124
143
125
- c .Assert (gotDate , qt .Equals , expecteFDate )
144
+ c .Assert (gotDate . Format ( "2006-01-02T15:04:05-07:00" ) , qt .Equals , test . date )
126
145
c .Assert (gotSlug , qt .Equals , test .slug )
127
146
128
147
}
0 commit comments