a tiny mvc framework for php using php-activerecord
1<?php
2use ActiveRecord\Column;
3
4include 'helpers/config.php';
5require_once __DIR__ . '/../lib/adapters/MysqlAdapter.php';
6
7class MysqlAdapterTest extends AdapterTest
8{
9 public function set_up($connection_name=null)
10 {
11 parent::set_up('mysql');
12 }
13
14 public function test_enum()
15 {
16 $author_columns = $this->conn->columns('authors');
17 $this->assert_equals('enum',$author_columns['some_enum']->raw_type);
18 $this->assert_equals(Column::STRING,$author_columns['some_enum']->type);
19 $this->assert_same(null,$author_columns['some_enum']->length);
20 }
21
22 public function test_set_charset()
23 {
24 $connection_string = ActiveRecord\Config::instance()->get_connection($this->connection_name);
25 $conn = ActiveRecord\Connection::instance($connection_string . '?charset=utf8');
26 $this->assert_equals('SET NAMES ?',$conn->last_query);
27 }
28
29 public function test_limit_with_null_offset_does_not_contain_offset()
30 {
31 $ret = array();
32 $sql = 'SELECT * FROM authors ORDER BY name ASC';
33 $this->conn->query_and_fetch($this->conn->limit($sql,null,1),function($row) use (&$ret) { $ret[] = $row; });
34
35 $this->assert_true(strpos($this->conn->last_query, 'LIMIT 1') !== false);
36 }
37}
38?>