mirror of
https://github.com/Icinga/icingaweb2.git
synced 2025-07-28 16:24:04 +02:00
Drop DbBackendFormTest
It's redundant now, we should test the inspection code directly instead.
This commit is contained in:
parent
216b762d12
commit
f8f8a4c848
@ -1,104 +0,0 @@
|
|||||||
<?php
|
|
||||||
/* Icinga Web 2 | (c) 2013-2015 Icinga Development Team | GPLv2+ */
|
|
||||||
|
|
||||||
namespace Tests\Icinga\Forms\Config\UserBackend;
|
|
||||||
|
|
||||||
// Necessary as some of these tests disable phpunit's preservation
|
|
||||||
// of the global state (e.g. autoloaders are in the global state)
|
|
||||||
require_once realpath(dirname(__FILE__) . '/../../../../bootstrap.php');
|
|
||||||
|
|
||||||
use Mockery;
|
|
||||||
use Icinga\Data\ConfigObject;
|
|
||||||
use Icinga\Test\BaseTestCase;
|
|
||||||
use Icinga\Forms\Config\UserBackend\DbBackendForm;
|
|
||||||
|
|
||||||
class DbBackendFormTest extends BaseTestCase
|
|
||||||
{
|
|
||||||
public function tearDown()
|
|
||||||
{
|
|
||||||
parent::tearDown();
|
|
||||||
Mockery::close(); // Necessary because some tests run in a separate process
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @runInSeparateProcess
|
|
||||||
* @preserveGlobalState disabled
|
|
||||||
*/
|
|
||||||
public function testValidBackendIsValid()
|
|
||||||
{
|
|
||||||
$this->setUpResourceFactoryMock();
|
|
||||||
Mockery::mock('overload:Icinga\Authentication\User\DbUserBackend')
|
|
||||||
->shouldReceive('inspect')
|
|
||||||
->andReturn(self::createInspector(false));
|
|
||||||
|
|
||||||
// Passing array(null) is required to make Mockery call the constructor...
|
|
||||||
$form = Mockery::mock('Icinga\Forms\Config\UserBackend\DbBackendForm[getView]', array(null));
|
|
||||||
$form->shouldReceive('getView->escape')
|
|
||||||
->with(Mockery::type('string'))
|
|
||||||
->andReturnUsing(function ($s) {
|
|
||||||
return $s;
|
|
||||||
});
|
|
||||||
$form->setTokenDisabled();
|
|
||||||
$form->setResources(array('test_db_backend'));
|
|
||||||
$form->populate(array('resource' => 'test_db_backend'));
|
|
||||||
|
|
||||||
$this->assertTrue(
|
|
||||||
DbBackendForm::isValidUserBackend($form),
|
|
||||||
'DbBackendForm claims that a valid user backend with users is not valid'
|
|
||||||
);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @runInSeparateProcess
|
|
||||||
* @preserveGlobalState disabled
|
|
||||||
*/
|
|
||||||
public function testInvalidBackendIsNotValid()
|
|
||||||
{
|
|
||||||
$this->setUpResourceFactoryMock();
|
|
||||||
Mockery::mock('overload:Icinga\Authentication\User\DbUserBackend')
|
|
||||||
->shouldReceive('inspect')
|
|
||||||
->andReturn(self::createInspector(true));
|
|
||||||
|
|
||||||
// Passing array(null) is required to make Mockery call the constructor...
|
|
||||||
$form = Mockery::mock('Icinga\Forms\Config\UserBackend\DbBackendForm[getView]', array(null));
|
|
||||||
$form->shouldReceive('getView->escape')
|
|
||||||
->with(Mockery::type('string'))
|
|
||||||
->andReturnUsing(function ($s) {
|
|
||||||
return $s;
|
|
||||||
});
|
|
||||||
$form->setTokenDisabled();
|
|
||||||
$form->setResources(array('test_db_backend'));
|
|
||||||
$form->populate(array('resource' => 'test_db_backend'));
|
|
||||||
|
|
||||||
$this->assertFalse(
|
|
||||||
DbBackendForm::isValidUserBackend($form),
|
|
||||||
'DbBackendForm claims that an invalid user backend without users is valid'
|
|
||||||
);
|
|
||||||
}
|
|
||||||
|
|
||||||
protected function setUpResourceFactoryMock()
|
|
||||||
{
|
|
||||||
Mockery::mock('alias:Icinga\Data\ResourceFactory')
|
|
||||||
->shouldReceive('createResource')
|
|
||||||
->andReturn(Mockery::mock('Icinga\Data\Db\DbConnection'))
|
|
||||||
->shouldReceive('getResourceConfig')
|
|
||||||
->andReturn(new ConfigObject());
|
|
||||||
}
|
|
||||||
|
|
||||||
public static function createInspector($error = false, $log = array('log'))
|
|
||||||
{
|
|
||||||
if (! $error) {
|
|
||||||
$calls = array(
|
|
||||||
'hasError' => false,
|
|
||||||
'toArray' => $log
|
|
||||||
);
|
|
||||||
} else {
|
|
||||||
$calls = array(
|
|
||||||
'hasError' => true,
|
|
||||||
'getError' => 'Error',
|
|
||||||
'toArray' => $log
|
|
||||||
);
|
|
||||||
}
|
|
||||||
return Mockery::mock('Icinga\Data\Inspection', $calls);
|
|
||||||
}
|
|
||||||
}
|
|
Loading…
x
Reference in New Issue
Block a user