aboutsummaryrefslogtreecommitdiff
path: root/Examples/test-suite/octave/li_std_wstring_runme.m
blob: cbccc0c12c8c97ecd5497fc852770eaae1b4852d (plain)
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
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
# do not dump Octave core
if exist("crash_dumps_octave_core", "builtin")
  crash_dumps_octave_core(0);
endif

li_std_wstring

x="h";

if (li_std_wstring.test_wcvalue(x) != x)
  error("bad string mapping")
endif

x="hello";
if (li_std_wstring.test_ccvalue(x) != x)
  error("bad string mapping")
endif

if (li_std_wstring.test_cvalue(x) != x)
  error("bad string mapping")
endif

if (li_std_wstring.test_value(x) != x)
  error("bad string mapping")
endif

if (li_std_wstring.test_const_reference(x) != x)
  error("bad string mapping")
endif


s = li_std_wstring.wstring("he");
s = s + "llo";

if (s != x)
  error("bad string mapping")
endif

if (s(1:4) != x(1:4))
  error("bad string mapping")
endif

if (li_std_wstring.test_value(s) != x)
  error("bad string mapping")
endif

if (li_std_wstring.test_const_reference(s) != x)
  error("bad string mapping")
endif

a = li_std_wstring.A(s);

if (li_std_wstring.test_value(a) != x)
  error("bad string mapping")
endif

if (li_std_wstring.test_const_reference(a) != x)
  error("bad string mapping")
endif

b = li_std_wstring.wstring(" world");

if (a + b != "hello world")
  error("bad string mapping")
endif
  
if (a + " world" != "hello world")
  error("bad string mapping")
endif

if ("hello" + b != "hello world")
  error("bad string mapping")
endif

c = "hello" + b;
if (c.find_last_of("l") != 9)
  error("bad string mapping")
endif
  
s = "hello world";

b = li_std_wstring.B("hi");

b.name = li_std_wstring.wstring("hello");
if (b.name != "hello")
  error("bad string mapping")
endif


b.a = li_std_wstring.A("hello");
if (b.a != "hello")
  error("bad string mapping")
endif