Revert "Revert "for DATE columns, return ruby Date object instead of Time (didn't realize I could create them from y,m,d integers without ActiveSupport)""

This reverts commit 5e4080e4e5.
This commit is contained in:
Brian Lopez 2010-04-25 21:45:40 -07:00
parent f6d62225ee
commit 428eb7e79b
3 changed files with 10 additions and 3 deletions

View File

@ -393,7 +393,7 @@ static VALUE rb_mysql_result_fetch_row(int argc, VALUE * argv, VALUE self) {
val = Qnil;
} else {
strptime(row[i], "%F", &parsedTime);
val = rb_funcall(rb_cTime, intern_local, 3, INT2NUM(1900+parsedTime.tm_year), INT2NUM(parsedTime.tm_mon+1), INT2NUM(parsedTime.tm_mday));
val = rb_funcall(cDate, intern_new, 3, INT2NUM(1900+parsedTime.tm_year), INT2NUM(parsedTime.tm_mon+1), INT2NUM(parsedTime.tm_mday));
}
break;
case MYSQL_TYPE_TINY_BLOB:

View File

@ -39,7 +39,7 @@ module ActiveRecord
when :float then Float
when :decimal then BigDecimal
when :datetime then Time
when :date then Time
when :date then Date
when :timestamp then Time
when :time then Time
when :text, :string then String

View File

@ -140,7 +140,6 @@ describe Mysql2::Result do
end
{
'date_test' => 'DATE',
'date_time_test' => 'DATETIME',
'timestamp_test' => 'TIMESTAMP',
'time_test' => 'TIME'
@ -150,6 +149,14 @@ describe Mysql2::Result do
end
end
{
'date_test' => 'DATE'
}.each do |field, type|
it "should return a Date for #{type}" do
@test_result[field].class.should eql(Date)
end
end
{
'char_test' => 'CHAR',
'varchar_test' => 'VARCHAR',