Fix metadata test to use explicit PK/FK names (#1442)
Changes testCrossReference() to validate the retrieved primary and foreign key columns
against their expected values. Previously it would have accepted them in either order or
the same value repeated twice for each.
Also checks to ensure that the expected number of rows are actually returned. Previously
it would have skipped all the checks if no rows were returned.