MediaWiki  1.34.0
HTMLReCaptchaNoCaptchaFieldTest.php
Go to the documentation of this file.
1 <?php
2 
6 class HTMLReCaptchaNoCaptchaFieldTest extends PHPUnit\Framework\TestCase {
7  public function testSubmit() {
8  $form = new HTMLForm( [
9  'foo' => [
10  'class' => HTMLReCaptchaNoCaptchaField::class,
11  'key' => '123',
12  ],
13  ] );
14  $request = new FauxRequest( [
15  'foo' => 'abc',
16  'g-recaptcha-response' => 'def',
17  ], true );
18  $mockClosure = $this->getMockBuilder( stdClass::class )
19  ->setMethods( [ '__invoke' ] )->getMock();
20  $mockClosure->expects( $this->once() )->method( '__invoke' )
21  ->with( [ 'foo' => 'def' ] )->willReturn( true );
22 
24  $context->setRequest( $request );
25  $form->setTitle( Title::newFromText( 'Title' ) );
26  $form->setContext( $context );
27  $form->setSubmitCallback( $mockClosure );
28  $form->prepareForm();
29  $form->trySubmit();
30  }
31 }
FauxRequest
WebRequest clone which takes values from a provided array.
Definition: FauxRequest.php:33
Title\newFromText
static newFromText( $text, $defaultNamespace=NS_MAIN)
Create a new Title from text, such as what one would find in a link.
Definition: Title.php:316
DerivativeContext
An IContextSource implementation which will inherit context from another source but allow individual ...
Definition: DerivativeContext.php:30
HTMLReCaptchaNoCaptchaFieldTest\testSubmit
testSubmit()
Definition: HTMLReCaptchaNoCaptchaFieldTest.php:7
HTMLReCaptchaNoCaptchaFieldTest
@covers HTMLReCaptchaNoCaptchaField
Definition: HTMLReCaptchaNoCaptchaFieldTest.php:6
RequestContext\getMain
static getMain()
Get the RequestContext object associated with the main request.
Definition: RequestContext.php:431
$context
$context
Definition: load.php:45
HTMLForm
Object handling generic submission, CSRF protection, layout and other logic for UI forms in a reusabl...
Definition: HTMLForm.php:131