summaryrefslogtreecommitdiff
path: root/Examples/test-suite/ruby/anonymous_bitfield_runme.rb
blob: 6949a3f288511fd72447bcc36e6c7f00da278b8c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
#!/usr/bin/env ruby
#
# Put script description here.
#
# 
# 
# 
#

require 'swig_assert'
require 'anonymous_bitfield'

include Anonymous_bitfield

foo = Foo.new

{'x' => 4,
  'y' => 3,
  'f' => 1,
  'z' => 8,
  'seq' => 3 }.each do |m, v|
  foo.send("#{m}=", v)
  val = foo.send(m)
  swig_assert("val == v", binding)
end

{'x' => (1 << 4),
  'y' => (1 << 4),
  'f' => (1 << 1),
  'z' => (1 << 16),
  'seq' => (1 << (4*8-6)) }.each do |m, v|
  foo.send("#{m}=", v)
  val = foo.send(m)
  swig_assert("val != v", binding)
end