diff options
| author | Nikita Popov <nikita.ppv@gmail.com> | 2020-09-21 16:11:50 +0200 |
|---|---|---|
| committer | Nikita Popov <nikita.ppv@gmail.com> | 2020-09-21 17:00:23 +0200 |
| commit | 54f03d31e07450defb230367a65d58cd42e80b1d (patch) | |
| tree | 8aa21bfaf263353cf151b84be792a1ea161f8b8f /ext/pgsql/tests | |
| parent | 68a907569c0d0406ad6e11017ccbe98ecc1f1405 (diff) | |
| download | php-git-54f03d31e07450defb230367a65d58cd42e80b1d.tar.gz | |
Promote invalid field to ValueError in pgsql
The same error condition is a ValueError in mysqli, be consistent.
Additionally, do not display the argument name for these errors.
As the signatures are overloaded, the argument name may not match
the meaning at all.
Diffstat (limited to 'ext/pgsql/tests')
| -rw-r--r-- | ext/pgsql/tests/03sync_query.phpt | 74 |
1 files changed, 74 insertions, 0 deletions
diff --git a/ext/pgsql/tests/03sync_query.phpt b/ext/pgsql/tests/03sync_query.phpt index 1cd439bc20..ce062cafd6 100644 --- a/ext/pgsql/tests/03sync_query.phpt +++ b/ext/pgsql/tests/03sync_query.phpt @@ -31,6 +31,32 @@ for ($i=0; $i < $rows; $i++) pg_fetch_result($result, $i, 0); } +try { + pg_fetch_result($result, 0, -1); +} catch (ValueError $e) { + echo $e->getMessage(), "\n"; +} +try { + pg_fetch_result($result, 0, 3); +} catch (ValueError $e) { + echo $e->getMessage(), "\n"; +} +try { + pg_fetch_result($result, 0, "unknown"); +} catch (ValueError $e) { + echo $e->getMessage(), "\n"; +} +try { + pg_fetch_all_columns($result, -1); +} catch (ValueError $e) { + echo $e->getMessage(), "\n"; +} +try { + pg_fetch_all_columns($result, 3); +} catch (ValueError $e) { + echo $e->getMessage(), "\n"; +} + pg_result_error($result); if (function_exists('pg_result_error_field')) { pg_result_error_field($result, PGSQL_DIAG_SEVERITY); @@ -61,6 +87,42 @@ pg_field_type($result, 0); pg_field_prtlen($result, 0); pg_field_is_null($result, 0); +try { + pg_field_is_null($result, -1); +} catch (ValueError $e) { + echo $e->getMessage(), "\n"; +} +try { + pg_field_is_null($result, 3); +} catch (ValueError $e) { + echo $e->getMessage(), "\n"; +} +try { + pg_field_is_null($result, "unknown"); +} catch (ValueError $e) { + echo $e->getMessage(), "\n"; +} +try { + pg_field_name($result, -1); +} catch (ValueError $e) { + echo $e->getMessage(), "\n"; +} +try { + pg_field_name($result, 3); +} catch (ValueError $e) { + echo $e->getMessage(), "\n"; +} +try { + pg_field_table($result, -1); +} catch (ValueError $e) { + echo $e->getMessage(), "\n"; +} +try { + pg_field_table($result, 3); +} catch (ValueError $e) { + echo $e->getMessage(), "\n"; +} + $result = pg_query($db, "INSERT INTO ".$table_name." VALUES (9999, 'ABC');"); pg_last_oid($result); @@ -70,4 +132,16 @@ pg_close($db); echo "OK"; ?> --EXPECT-- +Argument #3 must be greater than or equal to 0 +Argument #3 must be less than the number of fields for this result set +Argument #3 must be a field name from this result set +pg_fetch_all_columns(): Argument #2 ($field_number) must be greater than or equal to 0 +pg_fetch_all_columns(): Argument #2 ($field_number) must be less than the number of fields for this result set +Argument #2 must be greater than or equal to 0 +Argument #2 must be less than the number of fields for this result set +Argument #2 must be a field name from this result set +pg_field_name(): Argument #2 ($field_number) must be greater than or equal to 0 +pg_field_name(): Argument #2 ($field_number) must be less than the number of fields for this result set +pg_field_table(): Argument #2 ($field_number) must be greater than or equal to 0 +pg_field_table(): Argument #2 ($field_number) must be less than the number of fields for this result set OK |
