File tree Expand file tree Collapse file tree 3 files changed +13
-5
lines changed Expand file tree Collapse file tree 3 files changed +13
-5
lines changed Original file line number Diff line number Diff line change @@ -76,7 +76,9 @@ def days_in_month(self):
76
76
77
77
@property
78
78
def week_of_month (self ):
79
- return int (math .ceil (self .day / DAYS_PER_WEEK ))
79
+ first_day_of_month = self .replace (day = 1 )
80
+
81
+ return self .week_of_year - first_day_of_month .week_of_year + 1
80
82
81
83
@property
82
84
def age (self ):
Original file line number Diff line number Diff line change @@ -52,10 +52,13 @@ def test_is_long_year():
52
52
53
53
def test_week_of_month ():
54
54
assert pendulum .Date (2012 , 9 , 30 ).week_of_month == 5
55
- assert pendulum .Date (2012 , 9 , 28 ).week_of_month == 4
56
- assert pendulum .Date (2012 , 9 , 20 ).week_of_month == 3
55
+ assert pendulum .Date (2012 , 9 , 28 ).week_of_month == 5
56
+ assert pendulum .Date (2012 , 9 , 20 ).week_of_month == 4
57
57
assert pendulum .Date (2012 , 9 , 8 ).week_of_month == 2
58
58
assert pendulum .Date (2012 , 9 , 1 ).week_of_month == 1
59
+ assert pendulum .date (2020 , 1 , 1 ).week_of_month == 1
60
+ assert pendulum .date (2020 , 1 , 7 ).week_of_month == 2
61
+ assert pendulum .date (2020 , 1 , 14 ).week_of_month == 3
59
62
60
63
61
64
def test_week_of_year_first_week ():
Original file line number Diff line number Diff line change @@ -185,10 +185,13 @@ def test_is_long_year():
185
185
186
186
def test_week_of_month ():
187
187
assert pendulum .datetime (2012 , 9 , 30 ).week_of_month == 5
188
- assert pendulum .datetime (2012 , 9 , 28 ).week_of_month == 4
189
- assert pendulum .datetime (2012 , 9 , 20 ).week_of_month == 3
188
+ assert pendulum .datetime (2012 , 9 , 28 ).week_of_month == 5
189
+ assert pendulum .datetime (2012 , 9 , 20 ).week_of_month == 4
190
190
assert pendulum .datetime (2012 , 9 , 8 ).week_of_month == 2
191
191
assert pendulum .datetime (2012 , 9 , 1 ).week_of_month == 1
192
+ assert pendulum .datetime (2020 , 1 , 1 ).week_of_month == 1
193
+ assert pendulum .datetime (2020 , 1 , 7 ).week_of_month == 2
194
+ assert pendulum .datetime (2020 , 1 , 14 ).week_of_month == 3
192
195
193
196
194
197
def test_week_of_year_first_week ():
You can’t perform that action at this time.
0 commit comments