1
0
Fork 0
mirror of https://github.com/ruby/ruby.git synced 2022-11-09 12:17:21 -05:00

* ext/dl/lib/dl/struct.rb (DL::CStructEntity#set_ctypes): Refactored

#set_ctypes using newer ruby features to simplify its implementation.
* test/dl/test_c_struct_entry.rb (class DL):  Test to verify
  refactoring.

Reviewed by Aaron Patterson.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35857 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
drbrain 2012-05-31 22:07:09 +00:00
parent 4f69926f75
commit fe962cde15
3 changed files with 31 additions and 19 deletions

View file

@ -37,5 +37,17 @@ class DL::TestCStructEntity < DL::TestBase
assert_equal expected, size
end
def test_set_ctypes
union = DL::CStructEntity.malloc [DL::TYPE_INT, DL::TYPE_LONG]
union.assign_names %w[int long]
# this test is roundabout because the stored ctypes are not accessible
union['long'] = 1
union['int'] = 2
assert_equal 1, union['long']
assert_equal 2, union['int']
end
end