1<?php
2
3use MediaWiki\HeaderCallback;
4
5/**
6 * @coversDefaultClass MediaWiki\HeaderCallback
7 */
8class HeaderCallbackTest extends MediaWikiUnitTestCase {
9
10	/**
11	 * @dataProvider provideSanitizeSetCookie
12	 * @covers ::sanitizeSetCookie
13	 */
14	public function testSanitizeSetCookie( $raw, $expectedSanitized ) {
15		$this->assertSame( $expectedSanitized, HeaderCallback::sanitizeSetCookie( $raw ) );
16	}
17
18	public function provideSanitizeSetCookie() {
19		return [
20			[
21				[
22					'sessionId=38afes7a'
23				],
24				'sessionId=38afes7a',
25			],
26			[
27				[
28					'id=a3fWa; Expires=Wed, 21 Oct 2015 07:28:00 GMT'
29				],
30				'id=a3fWa; Expires=Wed, 21 Oct 2015 07:28:00 GMT',
31			],
32			[
33				[
34					'qwerty=219ffwef9w0f; Domain=somecompany.co.uk'
35				],
36				'qwerty=219ffwef...; Domain=somecompany.co.uk',
37			],
38			[
39				[
40					'sessionId=aaa',
41					'sessionId=bbbbbbbbbb',
42					'sessionId=ccc',
43				],
44				"sessionId=aaa\nsessionId=bbbbbbbb...\nsessionId=ccc",
45			],
46		];
47	}
48
49}
50