/** * @covers FOF30\Toolbar\Toolbar::onAdd * @dataProvider ToolbarDataprovider::getTestOnAdd */ public function testOnAdd($test, $check) { $msg = 'Toolbar::onAdd %s - Case: ' . $check['case']; \JToolbarHelper::resetMethods(); $platform = static::$container->platform; $platform::$isAdmin = $test['mock']['isAdmin']; $toolbar = $this->getMock('FOF30\\Tests\\Stubs\\Toolbar\\ToolbarStub', array('isDataView'), array(static::$container)); $toolbar->expects($this->any())->method('isDataView')->willReturn($test['mock']['dataView']); ReflectionHelper::setValue($toolbar, 'renderFrontendButtons', $test['buttons']); ReflectionHelper::setValue($toolbar, 'perms', (object) $test['perms']); $toolbar->onAdd(); $methods = \JToolbarHelper::$methodCounter; $this->assertEquals($check['methods'], $methods, sprintf($msg, 'Failed to invoke JToolbar methods')); }