PgsqlAdapterTest.php 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. <?php
  2. use ActiveRecord\Column;
  3. include 'helpers/config.php';
  4. require_once __DIR__ . '/../lib/adapters/PgsqlAdapter.php';
  5. class PgsqlAdapterTest extends AdapterTest
  6. {
  7. public function set_up($connection_name=null)
  8. {
  9. parent::set_up('pgsql');
  10. }
  11. public function test_insert_id()
  12. {
  13. $this->conn->query("INSERT INTO authors(author_id,name) VALUES(nextval('authors_author_id_seq'),'name')");
  14. $this->assert_true($this->conn->insert_id('authors_author_id_seq') > 0);
  15. }
  16. public function test_insert_id_with_params()
  17. {
  18. $x = array('name');
  19. $this->conn->query("INSERT INTO authors(author_id,name) VALUES(nextval('authors_author_id_seq'),?)",$x);
  20. $this->assert_true($this->conn->insert_id('authors_author_id_seq') > 0);
  21. }
  22. public function test_insert_id_should_return_explicitly_inserted_id()
  23. {
  24. $this->conn->query('INSERT INTO authors(author_id,name) VALUES(99,\'name\')');
  25. $this->assert_true($this->conn->insert_id('authors_author_id_seq') > 0);
  26. }
  27. public function test_set_charset()
  28. {
  29. $connection_string = ActiveRecord\Config::instance()->get_connection($this->connection_name);
  30. $conn = ActiveRecord\Connection::instance($connection_string . '?charset=utf8');
  31. $this->assert_equals("SET NAMES 'utf8'",$conn->last_query);
  32. }
  33. public function test_gh96_columns_not_duplicated_by_index()
  34. {
  35. $this->assert_equals(3,$this->conn->query_column_info("user_newsletters")->rowCount());
  36. }
  37. }
  38. ?>