Pwirth has uploaded a new change for review. ( 
https://gerrit.wikimedia.org/r/349418 )

Change subject: BSStateBar: Added BSApiStateBarTasksTest phpunit test
......................................................................

BSStateBar: Added BSApiStateBarTasksTest phpunit test

Change-Id: I649330454a3bdf4f73570e498dcd0797d15d4f70
---
A StateBar/tests/phpunit/BSApiStateBarTasksTest.php
1 file changed, 66 insertions(+), 0 deletions(-)


  git pull 
ssh://gerrit.wikimedia.org:29418/mediawiki/extensions/BlueSpiceExtensions 
refs/changes/18/349418/1

diff --git a/StateBar/tests/phpunit/BSApiStateBarTasksTest.php 
b/StateBar/tests/phpunit/BSApiStateBarTasksTest.php
new file mode 100644
index 0000000..f975a33
--- /dev/null
+++ b/StateBar/tests/phpunit/BSApiStateBarTasksTest.php
@@ -0,0 +1,66 @@
+<?php
+
+/**
+ * @group medium
+ * @group Database
+ * @group API
+ * @group BlueSpice
+ */
+class BSApiStateBarTasksTest extends BSApiTasksTestBase {
+       protected function setUp() {
+               parent::setUp();
+
+               //Statebar get it's context from 
BSApiTasks::getContext()->getWikiPage()
+               //so we need to manually reset the context and inject our test 
title
+               RequestContext::resetMain();
+               $GLOBALS['wgTitle'] = Title::newFromText( "Statebar" );
+               //Clear the BSStateBarBeforeBodyViewAdd to have always same
+               //circumstances
+               $GLOBALS['wgHooks']['BSStateBarBeforeBodyViewAdd'] = [];
+       }
+
+       protected function getModuleName () {
+               return 'bs-statebar-tasks';
+       }
+       public function addDBDataOnce() {
+               $this->insertPage( 'Statebar', "Statebar test page" );
+       }
+       function getTokens () {
+               return $this->getTokenList( self::$users[ 'sysop' ] );
+       }
+
+       public function testFailCollectBodyViews() {
+               $oData = $this->executeTask(
+                       'collectBodyViews',
+                       []
+               );
+
+               $this->assertTrue( $oData->success );
+               $this->assertArrayEquals( [], $oData->payload );
+       }
+
+       public function testCollectBodyViews() {
+               $GLOBALS['wgHooks']['BSStateBarBeforeBodyViewAdd'][]
+                       = function( $oStateBar, &$aBodyViews, $oUser, $oTitle ) 
{
+                       $aBodyViews[] = new 
StateBarTasksTestViewStateBarBodyElement();
+               };
+               $oData = $this->executeTask(
+                       'collectBodyViews',
+                       []
+               );
+
+               $this->assertTrue( $oData->success );
+               $this->assertArrayHasKey( 'views', $oData->payload );
+               $this->assertArrayHasKey( 0, $oData->payload['views'] );
+               $this->assertEquals(
+                       'StateBarTasksTestViewStateBarBodyElement',
+                       $oData->payload['views'][0]
+               );
+       }
+}
+
+class StateBarTasksTestViewStateBarBodyElement extends ViewStateBarBodyElement 
{
+       public function execute( $param = false ) {
+               return 'StateBarTasksTestViewStateBarBodyElement';
+       }
+}
\ No newline at end of file

-- 
To view, visit https://gerrit.wikimedia.org/r/349418
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: I649330454a3bdf4f73570e498dcd0797d15d4f70
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/extensions/BlueSpiceExtensions
Gerrit-Branch: master
Gerrit-Owner: Pwirth <[email protected]>

_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to