Security update for Core, with self-updated composer
[yaffs-website] / web / core / tests / Drupal / Tests / Core / Datetime / DateHelperTest.php
1 <?php
2
3 namespace Drupal\Tests\Core\Datetime;
4
5 use Drupal\Core\Datetime\DateHelper;
6 use Drupal\Core\DependencyInjection\ContainerBuilder;
7 use Drupal\Tests\UnitTestCase;
8
9 /**
10  * @coversDefaultClass \Drupal\Core\Datetime\DateHelper
11  * @group Datetime
12  */
13 class DateHelperTest extends UnitTestCase {
14
15   /**
16    * @covers ::weekDaysOrdered
17    * @dataProvider providerTestWeekDaysOrdered
18    */
19   public function testWeekDaysOrdered($first_day, $expected) {
20     $container = new ContainerBuilder();
21     $config = ['system.date' => ['first_day' => $first_day]];
22     $container->set('config.factory', $this->getConfigFactoryStub($config));
23     \Drupal::setContainer($container);
24
25     $weekdays = DateHelper::weekDaysUntranslated();
26     // self::assertSame() MUST be used here as it checks for array key order.
27     $this->assertSame($expected, DateHelper::weekDaysOrdered($weekdays));
28   }
29
30   public function providerTestWeekDaysOrdered() {
31     $data = [];
32     $data[] = [
33       0,
34       [
35         0 => 'Sunday',
36         1 => 'Monday',
37         2 => 'Tuesday',
38         3 => 'Wednesday',
39         4 => 'Thursday',
40         5 => 'Friday',
41         6 => 'Saturday',
42       ],
43     ];
44     $data[] = [
45       1,
46       [
47         1 => 'Monday',
48         2 => 'Tuesday',
49         3 => 'Wednesday',
50         4 => 'Thursday',
51         5 => 'Friday',
52         6 => 'Saturday',
53         0 => 'Sunday',
54       ]
55     ];
56     $data[] = [
57       2,
58       [
59         2 => 'Tuesday',
60         3 => 'Wednesday',
61         4 => 'Thursday',
62         5 => 'Friday',
63         6 => 'Saturday',
64         0 => 'Sunday',
65         1 => 'Monday',
66       ],
67     ];
68     $data[] = [
69       3,
70       [
71         3 => 'Wednesday',
72         4 => 'Thursday',
73         5 => 'Friday',
74         6 => 'Saturday',
75         0 => 'Sunday',
76         1 => 'Monday',
77         2 => 'Tuesday',
78       ],
79     ];
80     $data[] = [
81       4,
82       [
83         4 => 'Thursday',
84         5 => 'Friday',
85         6 => 'Saturday',
86         0 => 'Sunday',
87         1 => 'Monday',
88         2 => 'Tuesday',
89         3 => 'Wednesday',
90       ],
91     ];
92     $data[] = [
93       5,
94       [
95         5 => 'Friday',
96         6 => 'Saturday',
97         0 => 'Sunday',
98         1 => 'Monday',
99         2 => 'Tuesday',
100         3 => 'Wednesday',
101         4 => 'Thursday',
102       ],
103     ];
104     $data[] = [
105       6,
106       [
107         6 => 'Saturday',
108         0 => 'Sunday',
109         1 => 'Monday',
110         2 => 'Tuesday',
111         3 => 'Wednesday',
112         4 => 'Thursday',
113         5 => 'Friday',
114       ],
115     ];
116     $data[] = [
117       7,
118       [
119         0 => 'Sunday',
120         1 => 'Monday',
121         2 => 'Tuesday',
122         3 => 'Wednesday',
123         4 => 'Thursday',
124         5 => 'Friday',
125         6 => 'Saturday',
126       ],
127     ];
128     return $data;
129   }
130
131 }