Mercurial > hg > Members > shoshi > webvirt
view cake/tests/cases/libs/model/datasources/dbo/dbo_oracle.test.php @ 0:261e66bd5a0c
hg init
author | Shoshi TAMAKI <shoshi@cr.ie.u-ryukyu.ac.jp> |
---|---|
date | Sun, 24 Jul 2011 21:08:31 +0900 |
parents | |
children |
line wrap: on
line source
<?php /** * DboOracleTest file * * PHP versions 4 and 5 * * CakePHP(tm) : Rapid Development Framework (http://cakephp.org) * Copyright 2005-2010, Cake Software Foundation, Inc. (http://cakefoundation.org) * * Licensed under The MIT License * Redistributions of files must retain the above copyright notice. * * @copyright Copyright 2005-2010, Cake Software Foundation, Inc. (http://cakefoundation.org) * @link http://cakephp.org CakePHP(tm) Project * @package cake * @subpackage cake.cake.libs * @since CakePHP(tm) v 1.2.0 * @license MIT License (http://www.opensource.org/licenses/mit-license.php) */ if (!defined('CAKEPHP_UNIT_TEST_EXECUTION')) { define('CAKEPHP_UNIT_TEST_EXECUTION', 1); } require_once LIBS . 'model' . DS . 'datasources' . DS . 'dbo_source.php'; require_once LIBS . 'model' . DS . 'datasources' . DS . 'dbo' . DS . 'dbo_oracle.php'; /** * DboOracleTest class * * @package cake * @subpackage cake.tests.cases.libs.model.datasources.dbo */ class DboOracleTest extends CakeTestCase { /** * fixtures property */ var $fixtures = array('core.oracle_user'); /** * setup method * * @access public * @return void */ function setUp() { $this->_initDb(); } /** * skip method * * @access public * @return void */ function skip() { $this->_initDb(); $this->skipUnless($this->db->config['driver'] == 'oracle', '%s Oracle connection not available'); } /** * testLastErrorStatement method * * @access public * @return void */ function testLastErrorStatement() { if ($this->skip('testLastErrorStatement')) { return; } $this->expectError(); $this->db->execute("SELECT ' FROM dual"); $e = $this->db->lastError(); $r = 'ORA-01756: quoted string not properly terminated'; $this->assertEqual($e, $r); } /** * testLastErrorConnect method * * @access public * @return void */ function testLastErrorConnect() { if ($this->skip('testLastErrorConnect')) { return; } $config = $this->db->config; $old_pw = $this->db->config['password']; $this->db->config['password'] = 'keepmeout'; $this->db->connect(); $e = $this->db->lastError(); $r = 'ORA-01017: invalid username/password; logon denied'; $this->assertEqual($e, $r); $this->db->config['password'] = $old_pw; $this->db->connect(); } /** * testName method * * @access public * @return void */ function testName() { $Db = $this->db; #$Db =& new DboOracle($config = null, $autoConnect = false); $r = $Db->name($Db->name($Db->name('foo.last_update_date'))); $e = 'foo.last_update_date'; $this->assertEqual($e, $r); $r = $Db->name($Db->name($Db->name('foo._update'))); $e = 'foo."_update"'; $this->assertEqual($e, $r); $r = $Db->name($Db->name($Db->name('foo.last_update_date'))); $e = 'foo.last_update_date'; $this->assertEqual($e, $r); $r = $Db->name($Db->name($Db->name('last_update_date'))); $e = 'last_update_date'; $this->assertEqual($e, $r); $r = $Db->name($Db->name($Db->name('_update'))); $e = '"_update"'; $this->assertEqual($e, $r); } }