Skip to content

Commit 192261f

Browse files
committed
fixed compatibility with PHP 8
1 parent a3a99d8 commit 192261f

File tree

4 files changed

+6
-5
lines changed

4 files changed

+6
-5
lines changed

src/Database/DriverException.php

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,7 @@ public static function from(\PDOException $src)
3737
} else {
3838
$e->errorInfo = $src->errorInfo;
3939
$e->code = $src->code;
40+
$e->code = $e->errorInfo[0] ?? $src->code;
4041
}
4142
return $e;
4243
}

src/Database/Table/SqlBuilder.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -235,7 +235,7 @@ public function getParameters(): array
235235
}
236236
return array_merge(
237237
$this->parameters['select'],
238-
$this->parameters['joinConditionSorted'] ? call_user_func_array('array_merge', $this->parameters['joinConditionSorted']) : [],
238+
$this->parameters['joinConditionSorted'] ? array_merge(...array_values($this->parameters['joinConditionSorted'])) : [],
239239
$this->parameters['where'],
240240
$this->parameters['group'],
241241
$this->parameters['having'],

tests/Database/Connection.exceptions.phpt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ require __DIR__ . '/../bootstrap.php';
1313

1414
$e = Assert::exception(function () {
1515
$connection = new Nette\Database\Connection('unknown');
16-
}, Nette\Database\ConnectionException::class, 'invalid data source name', 0);
16+
}, Nette\Database\ConnectionException::class, '%a%valid data source %a%', 0);
1717

1818
Assert::same(null, $e->getDriverCode());
1919
Assert::same(null, $e->getSqlState());

tests/Database/Connection.lazy.phpt

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ require __DIR__ . '/../bootstrap.php';
1717
test('non lazy', function () {
1818
Assert::exception(function () {
1919
$connection = new Nette\Database\Connection('dsn', 'user', 'password');
20-
}, Nette\Database\DriverException::class, 'invalid data source name');
20+
}, Nette\Database\DriverException::class, '%a%valid data source %a%');
2121
});
2222

2323

@@ -26,15 +26,15 @@ test('lazy', function () {
2626
$context = new Nette\Database\Context($connection, new Structure($connection, new DevNullStorage));
2727
Assert::exception(function () use ($context) {
2828
$context->query('SELECT ?', 10);
29-
}, Nette\Database\DriverException::class, 'invalid data source name');
29+
}, Nette\Database\DriverException::class, '%a%valid data source %a%');
3030
});
3131

3232

3333
test('', function () {
3434
$connection = new Nette\Database\Connection('dsn', 'user', 'password', ['lazy' => true]);
3535
Assert::exception(function () use ($connection) {
3636
$connection->quote('x');
37-
}, Nette\Database\DriverException::class, 'invalid data source name');
37+
}, Nette\Database\DriverException::class, '%a%valid data source %a%');
3838
});
3939

4040

0 commit comments

Comments
 (0)