1from li_std_set import *
2
3s = set_string()
4
5s.append("a")
6s.append("b")
7s.append("c")
8
9sum = ""
10for i in s:
11    sum = sum + i
12
13if sum != "abc":
14    raise RuntimeError
15
16i = s.__iter__()
17if i.next() != "a":
18    raise RuntimeError
19if i.next() != "b":
20    raise RuntimeError
21if i.next() != "c":
22    raise RuntimeError
23
24
25b = s.begin()
26e = s.end()
27sum = ""
28while (b != e):
29    sum = sum + b.next()
30if sum != "abc":
31    raise RuntimeError
32
33b = s.rbegin()
34e = s.rend()
35sum = ""
36while (b != e):
37    sum = sum + b.next()
38
39if sum != "cba":
40    raise RuntimeError
41
42
43si = set_int()
44
45si.append(1)
46si.append(2)
47si.append(3)
48i = si.__iter__()
49
50if i.next() != 1:
51    raise RuntimeError
52if i.next() != 2:
53    raise RuntimeError
54if i.next() != 3:
55    raise RuntimeError
56
57if si[0] != 1:
58    raise RuntimeError
59
60i = s.begin()
61i.next()
62s.erase(i)
63
64b = s.begin()
65e = s.end()
66sum = ""
67while (b != e):
68    sum = sum + b.next()
69if sum != "ac":
70    raise RuntimeError
71
72
73b = s.begin()
74e = s.end()
75if e - b != 2:
76    raise RuntimeError
77
78m = b + 1
79if m.value() != "c":
80    raise RuntimeError
81
82
83s = pyset()
84s.insert((1, 2))
85s.insert(1)
86s.insert("hello")
87
88
89sum = ()
90for i in s:
91    sum = sum + (i,)
92
93if (len(sum) != 3 or (not 1 in sum) or (not "hello" in sum) or (not (1, 2) in sum)):
94    raise RuntimeError
95