Skip to content

Commit

Permalink
Merge pull request #11 from lowply/lowply/put-week-end-date-back
Browse files Browse the repository at this point in the history
Put WeekEndDate back
  • Loading branch information
lowply authored Jan 19, 2021
2 parents a3c0893 + 50ec1c0 commit 61df10d
Show file tree
Hide file tree
Showing 3 changed files with 18 additions and 12 deletions.
3 changes: 2 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,8 @@ This action opens a new issue from an issue template. It parses the template's f
- `.Year`: Year of the day when this action runs
- `.Month`: Month of the day when this action runs
- `.Day`: Day when this action runs
- `.WeekStartDate`: Date of Monday of the week (YYYY/MM/DD)
- `.WeekStartDate`: Date of Monday of the week (MM/DD)
- `.WeekEndDate`: Date of Sunday of the week (MM/DD)
- `.WeekNumber`: ISO week number
- `.WeekNumberYear`: Year of the Thursday of the week. Matches with [ISO week number](https://en.wikipedia.org/wiki/ISO_week_date#First_week)
- `.Dates`: Array of the dates of the week (Can be used as `{{ index .Dates 1 }}` in the template)
Expand Down
7 changes: 6 additions & 1 deletion src/date.go
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@ type date struct {
Month string
Day string
WeekStartDate string
WeekEndDate string
WeekNumber string
WeekNumberYear string
Dates [7]string
Expand All @@ -29,7 +30,11 @@ func NewDate(t time.Time) *date {
d.Year = strconv.Itoa(n.Year())
d.Month = fmt.Sprintf("%02d", int(n.Month()))
d.Day = fmt.Sprintf("%02d", n.Day())
d.WeekStartDate = n.BeginningOfWeek().Format("2006/01/02")

// https://github.com/jinzhu/now#mondaysunday
d.WeekStartDate = n.Monday().Format("01/02")
d.WeekEndDate = n.Sunday().Format("01/02")

_, isoweek := n.Monday().ISOWeek()
d.WeekNumber = fmt.Sprintf("%02d", isoweek)
// Thursday of the week, should be used with the week number
Expand Down
20 changes: 10 additions & 10 deletions src/date_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -14,23 +14,23 @@ type testCase struct {
func TestNewDate(t *testing.T) {
testCases := []testCase{
// Monday when Jan 1st is Monday
{now: "2018-01-01T00:00:00Z", should: "2018 Week 01, Week of 2018/01/01. Year 2018, Month 01, Day 01"},
{now: "2018-01-01T00:00:00Z", should: "2018 Week 01, Week of 01/01. Ends at 01/07. Year 2018, Month 01, Day 01"},
// Monday when Jan 1st is Tuesday
{now: "2018-12-31T00:00:00Z", should: "2019 Week 01, Week of 2018/12/31. Year 2018, Month 12, Day 31"},
{now: "2018-12-31T00:00:00Z", should: "2019 Week 01, Week of 12/31. Ends at 01/06. Year 2018, Month 12, Day 31"},
// Monday when Jan 1st is Wednesday
{now: "2019-12-30T00:00:00Z", should: "2020 Week 01, Week of 2019/12/30. Year 2019, Month 12, Day 30"},
{now: "2019-12-30T00:00:00Z", should: "2020 Week 01, Week of 12/30. Ends at 01/05. Year 2019, Month 12, Day 30"},
// Monday when Jan 1st is Thursday
{now: "2025-12-29T00:00:00Z", should: "2026 Week 01, Week of 2025/12/29. Year 2025, Month 12, Day 29"},
{now: "2025-12-29T00:00:00Z", should: "2026 Week 01, Week of 12/29. Ends at 01/04. Year 2025, Month 12, Day 29"},
// Monday when Jan 1st is Friday
{now: "2020-12-28T00:00:00Z", should: "2020 Week 53, Week of 2020/12/28. Year 2020, Month 12, Day 28"},
{now: "2020-12-28T00:00:00Z", should: "2020 Week 53, Week of 12/28. Ends at 01/03. Year 2020, Month 12, Day 28"},
// Monday when Jan 1st is Saturday
{now: "2021-12-27T00:00:00Z", should: "2021 Week 52, Week of 2021/12/27. Year 2021, Month 12, Day 27"},
{now: "2021-12-27T00:00:00Z", should: "2021 Week 52, Week of 12/27. Ends at 01/02. Year 2021, Month 12, Day 27"},
// Monday when Jan 1st is Saturday and it's a leap year
{now: "2032-12-27T00:00:00Z", should: "2032 Week 53, Week of 2032/12/27. Year 2032, Month 12, Day 27"},
{now: "2032-12-27T00:00:00Z", should: "2032 Week 53, Week of 12/27. Ends at 01/02. Year 2032, Month 12, Day 27"},
// Monday when Jan 1st is Sunday
{now: "2022-12-26T00:00:00Z", should: "2022 Week 52, Week of 2022/12/26. Year 2022, Month 12, Day 26"},
{now: "2022-12-26T00:00:00Z", should: "2022 Week 52, Week of 12/26. Ends at 01/01. Year 2022, Month 12, Day 26"},
// Wednesday when Jan 1st is Wednesday
{now: "2020-01-01T00:00:00Z", should: "2020 Week 01, Week of 2019/12/30. Year 2020, Month 01, Day 01"},
{now: "2020-01-01T00:00:00Z", should: "2020 Week 01, Week of 12/30. Ends at 01/05. Year 2020, Month 01, Day 01"},
}

for _, v := range testCases {
Expand All @@ -40,7 +40,7 @@ func TestNewDate(t *testing.T) {
t.Fatal(err)
}
d := NewDate(now)
current := fmt.Sprintf("%v Week %v, Week of %v. Year %v, Month %v, Day %v", d.WeekNumberYear, d.WeekNumber, d.WeekStartDate, d.Year, d.Month, d.Day)
current := fmt.Sprintf("%v Week %v, Week of %v. Ends at %v. Year %v, Month %v, Day %v", d.WeekNumberYear, d.WeekNumber, d.WeekStartDate, d.WeekEndDate, d.Year, d.Month, d.Day)
if current != v.should {
t.Fatalf("Actual: %v, Should: %v\n", current, v.should)
}
Expand Down

0 comments on commit 61df10d

Please sign in to comment.