Closes bpo-28281: Remove year (1-9999) limits on the weekday() functi… · python/cpython@66c88ce (original) (raw)

`@@ -9,6 +9,56 @@

`

9

9

`import datetime

`

10

10

`import os

`

11

11

``

``

12

`+

From https://en.wikipedia.org/wiki/Leap_year_starting_on_Saturday

`

``

13

`+

result_0_02_text = """\

`

``

14

`+

February 0

`

``

15

`+

Mo Tu We Th Fr Sa Su

`

``

16

`+

1 2 3 4 5 6

`

``

17

`+

7 8 9 10 11 12 13

`

``

18

`+

14 15 16 17 18 19 20

`

``

19

`+

21 22 23 24 25 26 27

`

``

20

`+

28 29

`

``

21

`+

"""

`

``

22

+

``

23

`+

result_0_text = """\

`

``

24

`+

0

`

``

25

+

``

26

`+

January February March

`

``

27

`+

Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su

`

``

28

`+

1 2 1 2 3 4 5 6 1 2 3 4 5

`

``

29

`+

3 4 5 6 7 8 9 7 8 9 10 11 12 13 6 7 8 9 10 11 12

`

``

30

`+

10 11 12 13 14 15 16 14 15 16 17 18 19 20 13 14 15 16 17 18 19

`

``

31

`+

17 18 19 20 21 22 23 21 22 23 24 25 26 27 20 21 22 23 24 25 26

`

``

32

`+

24 25 26 27 28 29 30 28 29 27 28 29 30 31

`

``

33

`+

31

`

``

34

+

``

35

`+

April May June

`

``

36

`+

Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su

`

``

37

`+

1 2 1 2 3 4 5 6 7 1 2 3 4

`

``

38

`+

3 4 5 6 7 8 9 8 9 10 11 12 13 14 5 6 7 8 9 10 11

`

``

39

`+

10 11 12 13 14 15 16 15 16 17 18 19 20 21 12 13 14 15 16 17 18

`

``

40

`+

17 18 19 20 21 22 23 22 23 24 25 26 27 28 19 20 21 22 23 24 25

`

``

41

`+

24 25 26 27 28 29 30 29 30 31 26 27 28 29 30

`

``

42

+

``

43

`+

July August September

`

``

44

`+

Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su

`

``

45

`+

1 2 1 2 3 4 5 6 1 2 3

`

``

46

`+

3 4 5 6 7 8 9 7 8 9 10 11 12 13 4 5 6 7 8 9 10

`

``

47

`+

10 11 12 13 14 15 16 14 15 16 17 18 19 20 11 12 13 14 15 16 17

`

``

48

`+

17 18 19 20 21 22 23 21 22 23 24 25 26 27 18 19 20 21 22 23 24

`

``

49

`+

24 25 26 27 28 29 30 28 29 30 31 25 26 27 28 29 30

`

``

50

`+

31

`

``

51

+

``

52

`+

October November December

`

``

53

`+

Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su

`

``

54

`+

1 1 2 3 4 5 1 2 3

`

``

55

`+

2 3 4 5 6 7 8 6 7 8 9 10 11 12 4 5 6 7 8 9 10

`

``

56

`+

9 10 11 12 13 14 15 13 14 15 16 17 18 19 11 12 13 14 15 16 17

`

``

57

`+

16 17 18 19 20 21 22 20 21 22 23 24 25 26 18 19 20 21 22 23 24

`

``

58

`+

23 24 25 26 27 28 29 27 28 29 30 25 26 27 28 29 30 31

`

``

59

`+

30 31

`

``

60

`+

"""

`

``

61

+

12

62

`result_2004_01_text = """\

`

13

63

` January 2004

`

14

64

`Mo Tu We Th Fr Sa Su

`

`@@ -343,12 +393,20 @@ def test_output(self):

`

343

393

`self.normalize_calendar(calendar.calendar(2004)),

`

344

394

`self.normalize_calendar(result_2004_text)

`

345

395

` )

`

``

396

`+

self.assertEqual(

`

``

397

`+

self.normalize_calendar(calendar.calendar(0)),

`

``

398

`+

self.normalize_calendar(result_0_text)

`

``

399

`+

)

`

346

400

``

347

401

`def test_output_textcalendar(self):

`

348

402

`self.assertEqual(

`

349

403

`calendar.TextCalendar().formatyear(2004),

`

350

404

`result_2004_text

`

351

405

` )

`

``

406

`+

self.assertEqual(

`

``

407

`+

calendar.TextCalendar().formatyear(0),

`

``

408

`+

result_0_text

`

``

409

`+

)

`

352

410

``

353

411

`def test_output_htmlcalendar_encoding_ascii(self):

`

354

412

`self.check_htmlcalendar_encoding('ascii', 'ascii')

`

`@@ -393,6 +451,10 @@ def test_formatmonth(self):

`

393

451

`calendar.TextCalendar().formatmonth(2004, 1),

`

394

452

`result_2004_01_text

`

395

453

` )

`

``

454

`+

self.assertEqual(

`

``

455

`+

calendar.TextCalendar().formatmonth(0, 2),

`

``

456

`+

result_0_02_text

`

``

457

`+

)

`

396

458

``

397

459

`def test_formatmonthname_with_year(self):

`

398

460

`self.assertEqual(

`