aboutsummaryrefslogtreecommitdiffstats
path: root/tests/phpunit/includes/api/ApiTestContext.php
blob: 23d3299f711bcffcbc1bb16a82f0cc7dce5c09e3 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
<?php

namespace MediaWiki\Tests\Api;

use MediaWiki\Context\DerivativeContext;
use MediaWiki\Context\RequestContext;
use MediaWiki\Permissions\Authority;
use MediaWiki\Request\WebRequest;

class ApiTestContext extends RequestContext {

	/**
	 * Returns a DerivativeContext with the request variables in place
	 *
	 * @param WebRequest $request WebRequest request object including parameters and session
	 * @param Authority|null $performer
	 * @return DerivativeContext
	 */
	public function newTestContext( WebRequest $request, ?Authority $performer = null ) {
		$context = new DerivativeContext( $this );
		$context->setRequest( $request );
		if ( $performer !== null ) {
			$context->setAuthority( $performer );
		}

		return $context;
	}
}

/** @deprecated class alias since 1.42 */
class_alias( ApiTestContext::class, 'ApiTestContext' );