1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76
|
<?php
declare(strict_types=1);
namespace PhpMyAdmin\Tests\Server;
use PhpMyAdmin\Server\Plugin;
use PhpMyAdmin\Tests\AbstractTestCase;
/**
* @covers \PhpMyAdmin\Server\Plugin
*/
#[\PHPUnit\Framework\Attributes\CoversClass(\PhpMyAdmin\Server\Plugin::class)]
class PluginTest extends AbstractTestCase
{
public function testFromState(): Plugin
{
$plugin = Plugin::fromState([
'name' => 'BLACKHOLE',
'version' => '1.0',
'status' => 'ACTIVE',
'type' => 'STORAGE ENGINE',
'typeVersion' => '100316.0',
'library' => 'ha_blackhole.so',
'libraryVersion' => '1.13',
'author' => 'MySQL AB',
'description' => '/dev/null storage engine (anything you write to it disappears)',
'license' => 'GPL',
'loadOption' => 'ON',
'maturity' => 'Stable',
'authVersion' => '1.0',
]);
self::assertInstanceOf(Plugin::class, $plugin);
self::assertSame('BLACKHOLE', $plugin->getName());
self::assertSame('1.0', $plugin->getVersion());
self::assertSame('ACTIVE', $plugin->getStatus());
self::assertSame('STORAGE ENGINE', $plugin->getType());
self::assertSame('100316.0', $plugin->getTypeVersion());
self::assertSame('ha_blackhole.so', $plugin->getLibrary());
self::assertSame('1.13', $plugin->getLibraryVersion());
self::assertSame('MySQL AB', $plugin->getAuthor());
self::assertSame('GPL', $plugin->getLicense());
self::assertSame('ON', $plugin->getLoadOption());
self::assertSame('Stable', $plugin->getMaturity());
self::assertSame('1.0', $plugin->getAuthVersion());
self::assertSame('/dev/null storage engine (anything you write to it disappears)', $plugin->getDescription());
return $plugin;
}
/**
* @param Plugin $plugin Plugin object to be tested
*
* @depends testFromState
*/
#[\PHPUnit\Framework\Attributes\Depends('testFromState')]
public function testToArray(Plugin $plugin): void
{
self::assertSame([
'name' => 'BLACKHOLE',
'version' => '1.0',
'status' => 'ACTIVE',
'type' => 'STORAGE ENGINE',
'type_version' => '100316.0',
'library' => 'ha_blackhole.so',
'library_version' => '1.13',
'author' => 'MySQL AB',
'description' => '/dev/null storage engine (anything you write to it disappears)',
'license' => 'GPL',
'load_option' => 'ON',
'maturity' => 'Stable',
'auth_version' => '1.0',
], $plugin->toArray());
}
}
|