summaryrefslogtreecommitdiff
path: root/Examples/test-suite/ruby/anonymous_bitfield_runme.rb
diff options
context:
space:
mode:
Diffstat (limited to 'Examples/test-suite/ruby/anonymous_bitfield_runme.rb')
-rwxr-xr-xExamples/test-suite/ruby/anonymous_bitfield_runme.rb35
1 files changed, 35 insertions, 0 deletions
diff --git a/Examples/test-suite/ruby/anonymous_bitfield_runme.rb b/Examples/test-suite/ruby/anonymous_bitfield_runme.rb
new file mode 100755
index 0000000..6949a3f
--- /dev/null
+++ b/Examples/test-suite/ruby/anonymous_bitfield_runme.rb
@@ -0,0 +1,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