Modify assert conditions not to be affected
by each database bind variable naming conventions
Merge pull request #14999 from yahonda/modify_bind_variable_name

Modify assert conditions not to be affected
by each database bind variable naming conventions

Closes #14999.
Handle other pk types in PostgreSQL gracefully.

In #10410 it was noted that you can no longer create PK's with the
type of bigserial in PostgreSQL in 4.0.0.rc1. This is mostly
because the newer adapter is checking for column type with the
id column instead of just letting it pass through like it did
before.

Side effects:
You may just create a PK column of a type that you really don't
want to be your PK. As far as I can tell this was allowed in 3.2.X
and perhaps an exception should be raised if you try and do
something extremely dumb.
Merge pull request #10505 from patricksrobertson/bigserial_id_not_identifying_pk

Handle other pk types in PostgreSQL gracefully.

Closes #10505.

- rebased
- test slightly modified
pg, fix Infinity and NaN values conversion.

Before this patch `Infinity`, `-Infinity` and `Nan` were read as `0`.
Merge pull request #13334 from gregolsen/postgresql_infinity

pg, fix Infinity and NaN values conversion.

Closes #13334.

* rebased
* removed guard
* inlined guard into case statement
pg, map `char` and `name` types as string. [dark-panda & Yves Senn]

Closes #10802.
pg, `change_column_default` accepts `[]`. Closes #11586.
test, use `columns_hash[]` in place of `columns.find {}`.
Fix typo in array_ext_test.rb
Update and add tests in array_ext_test.rb

- Rename `test_to_xml` to `test_to_xml_with_hash_elements` to make test
name more specific.

- Add `test_to_xml_with_non_hash_elements` and
`test_to_xml_with_non_hash_different_type_elements`

  `to_xml` behaves different when containing elements are same and
  different types.

- Add `test_to_xml_with_indent_set`