Skip to content

Commit 7258535

Browse files
Ladislav Gallaymarcandre
authored andcommitted
Fix class and method as attribute names
1 parent be451ff commit 7258535

2 files changed

Lines changed: 7 additions & 1 deletion

File tree

lib/ostruct.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -246,7 +246,7 @@ def new_ostruct_member!(name) # :nodoc:
246246
if owner.class == ::Class
247247
owner < ::OpenStruct
248248
else
249-
self.class.ancestors.any? do |mod|
249+
self.class!.ancestors.any? do |mod|
250250
return false if mod == ::OpenStruct
251251
mod == owner
252252
end

test/ostruct/test_ostruct.rb

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -406,4 +406,10 @@ def test_marshal
406406
o2 = Marshal.load(Marshal.dump(o))
407407
assert_equal o, o2
408408
end
409+
410+
def test_class
411+
os = OpenStruct.new(class: 'my-class', method: 'post')
412+
assert_equal('my-class', os.class)
413+
assert_equal(OpenStruct, os.class!)
414+
end
409415
end

0 commit comments

Comments
 (0)