1
0
mirror of https://github.com/dg/dibi.git synced 2025-08-11 08:34:59 +02:00

Translator: convert BackedEnum to scalar

also closes (#412)
This commit is contained in:
Miloslav Hůla
2021-12-06 15:45:00 +01:00
committed by David Grudl
parent 7d82ce2ff6
commit 04bb5ede3d
2 changed files with 46 additions and 0 deletions

View File

@@ -0,0 +1,41 @@
<?php
/**
* @phpVersion 8.1
* @dataProvider ../databases.ini
*/
declare(strict_types=1);
use Tester\Assert;
require __DIR__ . '/bootstrap.php';
$conn = new Dibi\Connection($config);
$translator = new Dibi\Translator($conn);
enum EnumInt: int
{
case One = 1;
}
enum EnumString: string
{
case One = 'one';
}
enum PureEnum
{
case One;
}
Assert::equal('1', $translator->formatValue(EnumInt::One, null));
Assert::equal(match ($config['driver']) {
'sqlsrv' => "N'one'",
default => "'one'",
}, $translator->formatValue(EnumString::One, null));
Assert::equal('**Unexpected PureEnum**', $translator->formatValue(PureEnum::One, null));