blob: 8d506af8ab4c7318f9bca1e953ae32d4c039cbd5 [file] [log] [blame]
li_std_string_extra
x="hello";
if (li_std_string_extra.test_ccvalue(x) != x)
error("bad string mapping")
endif
if (li_std_string_extra.test_cvalue(x) != x)
error("bad string mapping")
endif
if (li_std_string_extra.test_value(x) != x)
error("bad string mapping: %s, %s", x, li_std_string_extra.test_value(x))
endif
if (li_std_string_extra.test_const_reference(x) != x)
error("bad string mapping")
endif
s = li_std_string_extra.string("he");
#s += "ll"
#s.append("ll")
s = s + "llo";
if (s != x)
error("bad string mapping: %s, %s", s, x);
endif
#if (s(1:4) != x(1:4))
# error("bad string mapping")
#endif
if (li_std_string_extra.test_value(s) != x)
error("bad string mapping")
endif
if (li_std_string_extra.test_const_reference(s) != x)
error("bad string mapping")
endif
a = li_std_string_extra.A(s);
if (li_std_string_extra.test_value(a) != x)
error("bad string mapping")
endif
if (li_std_string_extra.test_const_reference(a) != x)
error("bad string mapping")
endif
b = li_std_string_extra.string(" world");
s = a + b;
if (a + b != "hello world")
error("bad string mapping: %s", a + b)
endif
if (a + " world" != "hello world")
error("bad string mapping")
endif
#if ("hello" + b != "hello world")
# error("bad string mapping")
#endif
c = (li_std_string_extra.string("hello") + b);
if (c.find_last_of("l") != 9)
error("bad string mapping")
endif
s = "hello world";
b = li_std_string_extra.B("hi");
b.name = li_std_string_extra.string("hello");
if (b.name != "hello")
error("bad string mapping")
endif
b.a = li_std_string_extra.A("hello");
if (b.a != "hello")
error("bad string mapping")
endif
if (li_std_string_extra.test_value_basic1(x) != x)
error("bad string mapping")
endif
if (li_std_string_extra.test_value_basic2(x) != x)
error("bad string mapping")
endif
if (li_std_string_extra.test_value_basic3(x) != x)
error("bad string mapping")
endif
# Global variables
s = "initial string";
if (li_std_string_extra.cvar.GlobalString2 != "global string 2")
error("GlobalString2 test 1")
endif
li_std_string_extra.cvar.GlobalString2 = s;
if (li_std_string_extra.cvar.GlobalString2 != s)
error("GlobalString2 test 2")
endif
if (li_std_string_extra.cvar.ConstGlobalString != "const global string")
error("ConstGlobalString test")
endif
# Member variables
myStructure = li_std_string_extra.Structure();
if (myStructure.MemberString2 != "member string 2")
error("MemberString2 test 1")
endif
myStructure.MemberString2 = s;
if (myStructure.MemberString2 != s)
error("MemberString2 test 2")
endif
if (myStructure.ConstMemberString != "const member string")
error("ConstMemberString test")
endif
if (li_std_string_extra.cvar.Structure_StaticMemberString2 != "static member string 2")
error("StaticMemberString2 test 1")
endif
li_std_string_extra.cvar.Structure_StaticMemberString2 = s;
if (li_std_string_extra.cvar.Structure_StaticMemberString2 != s)
error("StaticMemberString2 test 2")
endif
if (li_std_string_extra.cvar.Structure_ConstStaticMemberString != "const static member string")
error("ConstStaticMemberString test")
endif
if (li_std_string_extra.test_reference_input("hello") != "hello")
error
endif
s = li_std_string_extra.test_reference_inout("hello");
if (s != "hellohello")
error
endif
if (li_std_string_extra.stdstring_empty() != "")
error
endif
if (li_std_string_extra.c_empty() != "")
error
endif
#if (li_std_string_extra.c_null() != None)
# error
#endif