MediaWiki REL1_34
HTMLReCaptchaNoCaptchaFieldTest.php
Go to the documentation of this file.
1<?php
2
6class 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
23 $context = new DerivativeContext( RequestContext::getMain() );
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}
An IContextSource implementation which will inherit context from another source but allow individual ...
WebRequest clone which takes values from a provided array.
Object handling generic submission, CSRF protection, layout and other logic for UI forms in a reusabl...
Definition HTMLForm.php:131
@covers HTMLReCaptchaNoCaptchaField
$context
Definition load.php:45