File: li_std_map_runme.rb

package info (click to toggle)
swig 4.3.0-1
  • links: PTS, VCS
  • area: main
  • in suites: trixie
  • size: 46,232 kB
  • sloc: cpp: 54,631; ansic: 29,122; java: 17,530; python: 12,505; cs: 10,369; ruby: 7,232; yacc: 6,477; makefile: 5,965; javascript: 5,520; sh: 5,415; perl: 4,187; php: 3,693; ml: 2,187; lisp: 2,056; tcl: 1,991; xml: 115
file content (66 lines) | stat: -rw-r--r-- 1,445 bytes parent folder | download | duplicates (2)
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
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
#!/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


lmap = Li_std_map::LanguageMap.new
lmap[1] = 3
lmap[8] = 9
swig_assert("lmap.select {|k, v| k == 8}.to_s == \"[8, 9]\"", binding)

Li_std_map::populate(Li_std_map.MyMap)
Li_std_map.MyMap["eeeeee"] = 6
swig_assert( "Li_std_map.MyMap['a'] == 1", binding )
swig_assert( "Li_std_map.MyMap['aa'] == 2", binding )
swig_assert( "Li_std_map.MyMap['zzz'] == 3", binding )
swig_assert( "Li_std_map.MyMap['xxxx'] == 4", binding )
swig_assert( "Li_std_map.MyMap['aaaaa'] == 5", binding )
swig_assert( "Li_std_map.MyMap['eeeeee'] == 6", binding )

mii = Li_std_map::IntIntMap.new

mii[1] = 1
mii[1] = 2

swig_assert( "mii[1] == 2", binding )