summaryrefslogtreecommitdiff
path: root/www/wiki/extensions/ConfirmEdit/tests/HTMLSubmittedValueFieldTest.php
diff options
context:
space:
mode:
Diffstat (limited to 'www/wiki/extensions/ConfirmEdit/tests/HTMLSubmittedValueFieldTest.php')
-rw-r--r--www/wiki/extensions/ConfirmEdit/tests/HTMLSubmittedValueFieldTest.php29
1 files changed, 29 insertions, 0 deletions
diff --git a/www/wiki/extensions/ConfirmEdit/tests/HTMLSubmittedValueFieldTest.php b/www/wiki/extensions/ConfirmEdit/tests/HTMLSubmittedValueFieldTest.php
new file mode 100644
index 00000000..1fdb015a
--- /dev/null
+++ b/www/wiki/extensions/ConfirmEdit/tests/HTMLSubmittedValueFieldTest.php
@@ -0,0 +1,29 @@
+<?php
+
+require_once __DIR__ . '/../ReCaptcha/HTMLSubmittedValueField.php';
+
+class HTMLSubmittedValueFieldTest extends PHPUnit_Framework_TestCase {
+ public function testSubmit() {
+ $form = new HTMLForm( [
+ 'foo' => [
+ 'class' => HTMLSubmittedValueField::class,
+ 'name' => 'bar',
+ ],
+ ] );
+ $request = new FauxRequest( [
+ 'foo' => '123',
+ 'bar' => '456',
+ ], true );
+ $mockClosure = $this->getMockBuilder( 'object' )->setMethods( [ '__invoke' ] )->getMock();
+ $mockClosure->expects( $this->once() )->method( '__invoke' )
+ ->with( [ 'foo' => '456' ] )->willReturn( true );
+
+ $context = new DerivativeContext( RequestContext::getMain() );
+ $context->setRequest( $request );
+ $form->setTitle( Title::newFromText( 'Title' ) );
+ $form->setContext( $context );
+ $form->setSubmitCallback( $mockClosure );
+ $form->prepareForm();
+ $form->trySubmit();
+ }
+}