. // }}} namespace App\Tests\Util; use Symfony\Bundle\FrameworkBundle\Test\KernelTestCase; class FooBitmap extends \App\Util\Bitmap { public const FOO = 1; public const BAR = 2; public const QUUX = 4; } class BarBitmap extends \App\Util\Bitmap { public const HYDROGEN = 1; public const HELIUM = 2; public const PREFIX = 'BAR_'; } class BitmapTest extends KernelTestCase { public function testObj() { $a = FooBitmap::create(FooBitmap::FOO | FooBitmap::BAR); static::assertTrue($a->foo); static::assertTrue($a->bar); static::assertFalse($a->quux); } public function testArray() { $b = FooBitmap::toArray(FooBitmap::FOO | FooBitmap::QUUX); static::assertSame(['FOO', 'QUUX'], $b); } public function testPrefix() { $b = BarBitmap::toArray(BarBitmap::HYDROGEN | BarBitmap::HELIUM); static::assertSame(['BAR_HYDROGEN', 'BAR_HELIUM'], $b); } }