| #!/usr/bin/env ruby |
| # |
| # Tests for std::map |
| # |
| # |
| # |
| # |
| # |
| |
| require 'swig_assert' |
| require 'li_std_map' |
| |
| swig_assert_each_line(<<'EOF', binding) |
| |
| a1 = Li_std_map::A.new(3) |
| a2 = Li_std_map::A.new(7) |
| |
| p0 = Li_std_map::Pairii.new(1,2) |
| p1 = Li_std_map::PairA.new(1,a1) |
| m = {} |
| m[1] = a1 |
| m[2] = a2 |
| |
| pp1 = Li_std_map::p_identa(p1) |
| mm = Li_std_map::m_identa(m) |
| |
| m = Li_std_map::MapA.new |
| m[1] = a1 |
| m[2] = a2 |
| m.respond_to?(:each_key) == true |
| m.respond_to?(:each_value) == true |
| |
| pm ={} |
| m.each_key { |k| pm[k] = m[k] } |
| m.each_key { |k| swig_assert_equal("pm[k].object_id", "m[k].object_id", binding, 'only true if %trackings is on') } |
| |
| m = {} |
| m[1] = [1,2] |
| m["foo"] = "hello" |
| |
| pm = Li_std_map::LanguageMap.new |
| m.each_key { |k| pm[k] = m[k] } |
| m.each_key { |k| swig_assert_equal("pm[#{k.inspect}]", "m[#{k.inspect}]", binding) } |
| EOF |
| |
| mii = Li_std_map::IntIntMap.new |
| |
| mii[1] = 1 |
| mii[1] = 2 |
| |
| swig_assert( "mii[1] == 2", binding ) |