2010-03-12 09:22:29 +00:00
|
|
|
require "cases/helper"
|
|
|
|
|
|
|
|
class DirtyTest < ActiveModel::TestCase
|
|
|
|
class DirtyModel
|
|
|
|
include ActiveModel::Dirty
|
|
|
|
define_attribute_methods [:name]
|
|
|
|
|
|
|
|
def initialize
|
|
|
|
@name = nil
|
|
|
|
end
|
|
|
|
|
|
|
|
def name
|
|
|
|
@name
|
|
|
|
end
|
|
|
|
|
|
|
|
def name=(val)
|
|
|
|
name_will_change!
|
|
|
|
@name = val
|
|
|
|
end
|
|
|
|
end
|
|
|
|
|
|
|
|
test "changes accessible through both strings and symbols" do
|
|
|
|
model = DirtyModel.new
|
|
|
|
model.name = "David"
|
2010-05-19 01:47:24 +00:00
|
|
|
assert_not_nil model.changes[:name]
|
|
|
|
assert_not_nil model.changes['name']
|
2010-03-12 09:22:29 +00:00
|
|
|
end
|
|
|
|
|
|
|
|
end
|