<?php require_once(dirname(__FILE__).'/BaseCase.php'); /** * @package System.DataAccess.SQLMap */ class ResultClassTest extends BaseCase { function __construct() { parent::__construct(); $this->initSqlMap(); } /** * Test a boolean resultClass */ function testBoolean() { $bit = $this->sqlmap->queryForObject("GetBoolean", 1); $this->assertIdentical(true, $bit); } /** * Test a boolean implicit resultClass */ function testBooleanWithoutResultClass() { $bit = (boolean)$this->sqlmap->queryForObject("GetBooleanWithoutResultClass", 1); $this->assertIdentical(true, $bit); } /** * Test a byte resultClass */ function testByte() { $letter = $this->sqlmap->queryForObject("GetByte", 1); $this->assertIdentical(155, (int)$letter); } /** * Test a byte implicit resultClass */ function testByteWithoutResultClass() { $letter = $this->sqlmap->queryForObject("GetByteWithoutResultClass", 1); $this->assertIdentical(155, (int)$letter); } /** * Test a char resultClass */ function testChar() { $letter = $this->sqlmap->queryForObject("GetChar", 1); $this->assertIdentical('a', trim($letter)); } /** * Test a char implicit resultClass */ function testCharWithoutResultClass() { $letter = $this->sqlmap->queryForObject("GetCharWithoutResultClass", 1); $this->assertIdentical('a', trim($letter)); } /** * Test a DateTime resultClass */ function testDateTime() { $orderDate = $this->sqlmap->queryForObject("GetDate", 1); $date = @mktime(8, 15, 00, 2, 15, 2003); $this->assertIdentical($date, $orderDate->getTimeStamp()); } /** * Test a DateTime implicit resultClass */ function testDateTimeWithoutResultClass() { $date = $this->sqlmap->queryForObject("GetDateWithoutResultClass", 1); $orderDate = new TDateTime; $orderDate->setDateTime($date); $date = @mktime(8, 15, 00, 2, 15, 2003); $this->assertIdentical($date, $orderDate->getTimeStamp()); } /** * Test a decimal resultClass */ function testDecimal() { $price = $this->sqlmap->queryForObject("GetDecimal", 1); $this->assertIdentical(1.56, $price); } /** * Test a decimal implicit resultClass */ function testDecimalWithoutResultClass() { $price = $this->sqlmap->queryForObject("GetDecimalWithoutResultClass", 1); $this->assertIdentical(1.56, (float)$price); } /** * Test a double resultClass */ function testDouble() { $price = $this->sqlmap->queryForObject("GetDouble", 1); $this->assertIdentical(99.5, $price); } /** * Test a double implicit resultClass */ function testDoubleWithoutResultClass() { $price = $this->sqlmap->queryForObject("GetDoubleWithoutResultClass", 1); $this->assertIdentical(99.5, (float)$price); } /** * IBATISNET-25 Error applying ResultMap when using 'Guid' in resultClass */ /* function testGuid() { Guid newGuid = new Guid("CD5ABF17-4BBC-4C86-92F1-257735414CF4"); Guid guid = (Guid) $this->sqlmap->queryForObject("GetGuid", 1); $this->assertIdentical(newGuid, guid); } */ /** * Test a Guid implicit resultClass */ /* function testGuidWithoutResultClass() { Guid newGuid = new Guid("CD5ABF17-4BBC-4C86-92F1-257735414CF4"); string guidString = Convert.ToString($this->sqlmap->queryForObject("GetGuidWithoutResultClass", 1)); Guid guid = new Guid(guidString); $this->assertIdentical(newGuid, guid); } */ /** * Test a int16 resultClass (integer in PHP) */ function testInt16() { $integer = $this->sqlmap->queryForObject("GetInt16", 1); $this->assertIdentical(32111, $integer); } /** * Test a int16 implicit resultClass (integer in PHP) */ function testInt16WithoutResultClass() { $integer = $this->sqlmap->queryForObject("GetInt16WithoutResultClass", 1); $this->assertIdentical(32111, (int)$integer); } /** * Test a int 32 resultClass (integer in PHP) */ function testInt32() { $integer = $this->sqlmap->queryForObject("GetInt32", 1); $this->assertIdentical(999999, $integer); } /** * Test a int 32 implicit resultClass (integer in PHP) */ function testInt32WithoutResultClass() { $integer = $this->sqlmap->queryForObject("GetInt32WithoutResultClass", 1); $this->assertIdentical(999999, (int)$integer); } /** * Test a int64 resultClass (float in PHP) */ function testInt64() { $bigInt = $this->sqlmap->queryForObject("GetInt64", 1); $this->assertIdentical(9223372036854775800, $bigInt); } /** * Test a int64 implicit resultClass (float in PHP) */ function testInt64WithoutResultClass() { $bigInt = $this->sqlmap->queryForObject("GetInt64WithoutResultClass", 1); $this->assertIdentical(9223372036854775800, (double)$bigInt); } /** * Test a single/float resultClass */ function testSingle() { $price = (float)$this->sqlmap->queryForObject("GetSingle", 1); $this->assertIdentical(92233.5, $price); } /** * Test a single/float implicit resultClass */ function testSingleWithoutResultClass() { $price = $this->sqlmap->queryForObject("GetSingleWithoutResultClass", 1); $this->assertIdentical(92233.5, (float)$price); } /** * Test a string resultClass */ function testString() { $cardType = $this->sqlmap->queryForObject("GetString", 1); $this->assertIdentical("VISA", $cardType); } /** * Test a string implicit resultClass */ function testStringWithoutResultClass() { $cardType = $this->sqlmap->queryForObject("GetStringWithoutResultClass", 1); $this->assertIdentical("VISA", $cardType); } /**/ } ?>