/**
  * testFields method
  *
  * @return void
  */
 public function testFields()
 {
     $fields = array('[SqlserverTestModel].[id] AS [SqlserverTestModel__id]', '[SqlserverTestModel].[client_id] AS [SqlserverTestModel__client_id]', '[SqlserverTestModel].[name] AS [SqlserverTestModel__name]', '[SqlserverTestModel].[login] AS [SqlserverTestModel__login]', '[SqlserverTestModel].[passwd] AS [SqlserverTestModel__passwd]', '[SqlserverTestModel].[addr_1] AS [SqlserverTestModel__addr_1]', '[SqlserverTestModel].[addr_2] AS [SqlserverTestModel__addr_2]', '[SqlserverTestModel].[zip_code] AS [SqlserverTestModel__zip_code]', '[SqlserverTestModel].[city] AS [SqlserverTestModel__city]', '[SqlserverTestModel].[country] AS [SqlserverTestModel__country]', '[SqlserverTestModel].[phone] AS [SqlserverTestModel__phone]', '[SqlserverTestModel].[fax] AS [SqlserverTestModel__fax]', '[SqlserverTestModel].[url] AS [SqlserverTestModel__url]', '[SqlserverTestModel].[email] AS [SqlserverTestModel__email]', '[SqlserverTestModel].[comments] AS [SqlserverTestModel__comments]', 'CONVERT(VARCHAR(20), [SqlserverTestModel].[last_login], 20) AS [SqlserverTestModel__last_login]', '[SqlserverTestModel].[created] AS [SqlserverTestModel__created]', 'CONVERT(VARCHAR(20), [SqlserverTestModel].[updated], 20) AS [SqlserverTestModel__updated]');
     $result = $this->db->fields($this->model);
     $expected = $fields;
     $this->assertEquals($expected, $result);
     $this->db->clearFieldMappings();
     $result = $this->db->fields($this->model, null, 'SqlserverTestModel.*');
     $expected = $fields;
     $this->assertEquals($expected, $result);
     $this->db->clearFieldMappings();
     $result = $this->db->fields($this->model, null, array('*', 'AnotherModel.id', 'AnotherModel.name'));
     $expected = array_merge($fields, array('[AnotherModel].[id] AS [AnotherModel__id]', '[AnotherModel].[name] AS [AnotherModel__name]'));
     $this->assertEquals($expected, $result);
     $this->db->clearFieldMappings();
     $result = $this->db->fields($this->model, null, array('*', 'SqlserverClientTestModel.*'));
     $expected = array_merge($fields, array('[SqlserverClientTestModel].[id] AS [SqlserverClientTestModel__id]', '[SqlserverClientTestModel].[name] AS [SqlserverClientTestModel__name]', '[SqlserverClientTestModel].[email] AS [SqlserverClientTestModel__email]', 'CONVERT(VARCHAR(20), [SqlserverClientTestModel].[created], 20) AS [SqlserverClientTestModel__created]', 'CONVERT(VARCHAR(20), [SqlserverClientTestModel].[updated], 20) AS [SqlserverClientTestModel__updated]'));
     $this->assertEquals($expected, $result);
 }
 /**
  * testFields method
  *
  * @access public
  * @return void
  */
 function testFields()
 {
     $fields = array('[MssqlTestModel].[id] AS [MssqlTestModel__0]', '[MssqlTestModel].[client_id] AS [MssqlTestModel__1]', '[MssqlTestModel].[name] AS [MssqlTestModel__2]', '[MssqlTestModel].[login] AS [MssqlTestModel__3]', '[MssqlTestModel].[passwd] AS [MssqlTestModel__4]', '[MssqlTestModel].[addr_1] AS [MssqlTestModel__5]', '[MssqlTestModel].[addr_2] AS [MssqlTestModel__6]', '[MssqlTestModel].[zip_code] AS [MssqlTestModel__7]', '[MssqlTestModel].[city] AS [MssqlTestModel__8]', '[MssqlTestModel].[country] AS [MssqlTestModel__9]', '[MssqlTestModel].[phone] AS [MssqlTestModel__10]', '[MssqlTestModel].[fax] AS [MssqlTestModel__11]', '[MssqlTestModel].[url] AS [MssqlTestModel__12]', '[MssqlTestModel].[email] AS [MssqlTestModel__13]', '[MssqlTestModel].[comments] AS [MssqlTestModel__14]', 'CONVERT(VARCHAR(20), [MssqlTestModel].[last_login], 20) AS [MssqlTestModel__15]', '[MssqlTestModel].[created] AS [MssqlTestModel__16]', 'CONVERT(VARCHAR(20), [MssqlTestModel].[updated], 20) AS [MssqlTestModel__17]');
     $result = $this->db->fields($this->model);
     $expected = $fields;
     $this->assertEqual($result, $expected);
     $this->db->clearFieldMappings();
     $result = $this->db->fields($this->model, null, 'MssqlTestModel.*');
     $expected = $fields;
     $this->assertEqual($result, $expected);
     $this->db->clearFieldMappings();
     $result = $this->db->fields($this->model, null, array('*', 'AnotherModel.id', 'AnotherModel.name'));
     $expected = array_merge($fields, array('[AnotherModel].[id] AS [AnotherModel__18]', '[AnotherModel].[name] AS [AnotherModel__19]'));
     $this->assertEqual($result, $expected);
     $this->db->clearFieldMappings();
     $result = $this->db->fields($this->model, null, array('*', 'MssqlClientTestModel.*'));
     $expected = array_merge($fields, array('[MssqlClientTestModel].[id] AS [MssqlClientTestModel__18]', '[MssqlClientTestModel].[name] AS [MssqlClientTestModel__19]', '[MssqlClientTestModel].[email] AS [MssqlClientTestModel__20]', 'CONVERT(VARCHAR(20), [MssqlClientTestModel].[created], 20) AS [MssqlClientTestModel__21]', 'CONVERT(VARCHAR(20), [MssqlClientTestModel].[updated], 20) AS [MssqlClientTestModel__22]'));
     $this->assertEqual($result, $expected);
 }