diff options
Diffstat (limited to 'Examples/test-suite/ruby/li_std_set_runme.rb')
| -rwxr-xr-x | Examples/test-suite/ruby/li_std_set_runme.rb | 63 |
1 files changed, 63 insertions, 0 deletions
diff --git a/Examples/test-suite/ruby/li_std_set_runme.rb b/Examples/test-suite/ruby/li_std_set_runme.rb new file mode 100755 index 0000000..65354be --- /dev/null +++ b/Examples/test-suite/ruby/li_std_set_runme.rb @@ -0,0 +1,63 @@ +#!/usr/bin/env ruby +# +# Put script description here. +# +# +# +# +# + +require 'swig_assert' + +require 'li_std_set' +include Li_std_set + +swig_assert_each_line(<<'EOF', binding) +s = Set_string.new + +s.push("a") +s.push("b") +s << "c" + +sum = '' +s.each { |x| sum << x } +sum == 'abc' + +b = s.begin # only if swig iterators are on +e = s.end +sum = '' +while b != e; sum << b.value; b.next; end +sum == 'abc' + +b = s.rbegin # only if swig iterators are on +e = s.rend +sum = '' +while b != e; sum << b.value; b.next; end +sum == 'cba' + + +si = Set_int.new +si << 1 +si.push(2) +si.push(3) + +i = s.begin() +i.next() +s.erase(i) +s.to_s == 'ac' + +b = s.begin +e = s.end +e - b == 2 + +m = b + 1 +m.value == 'c' + +s = LanguageSet.new +s.insert([1,2]) +s.insert(1) +s.insert("hello") +s.to_a == [1,[1,2],'hello'] # sort order: s.sort {|a,b| a.hash <=> b.hash} + +EOF + |
