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):
7676
7777 @property
7878 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
8082
8183 @property
8284 def age (self ):
Original file line number Diff line number Diff line change @@ -52,10 +52,13 @@ def test_is_long_year():
5252
5353def test_week_of_month ():
5454 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
5757 assert pendulum .Date (2012 , 9 , 8 ).week_of_month == 2
5858 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
5962
6063
6164def 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():
185185
186186def test_week_of_month ():
187187 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
190190 assert pendulum .datetime (2012 , 9 , 8 ).week_of_month == 2
191191 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
192195
193196
194197def test_week_of_year_first_week ():
You can’t perform that action at this time.
0 commit comments