Wiki

root/cobra/trunk/Tests/100-basics/060-string.cobra

Revision 2631, 1.4 KB (checked in by Charles.Esterbrook, 5 months ago)

JVM back-end progress.
credit:hopscc

  • Property svn:eol-style set to native
Line 
1#.require. clr
2namespace Test
3
4    class Test
5
6        def main
7            is shared
8
9            s as String = ''
10            assert not s.length
11            s = 'aoeu'
12            assert 'aoeu'.length
13            assert s.length==4
14
15            assert 'aoeu'=='aoeu'
16            assert s=='aoeu'
17            assert s<>'asdf'
18
19            assert s.equals('aoeu')
20            assert s.getHashCode<>0
21
22            s = "aoeu"  # double quotes
23
24            assert 'aoeu'.length==4
25            assert '\a'.length==1
26            assert '\b'.length==1
27            assert '\f'.length==1
28            assert '\n'.length==1
29            assert '\r'.length==1
30            assert '\t'.length==1
31            assert '\v'.length==1
32            assert '\''.length==1
33            assert '\"'.length==1
34            assert '\\'.length==1
35            assert '\?'.length==1
36            assert '\0'.length==1
37            assert '\\t'.length==2
38            assert '\\t'[1]=='t'
39
40            # concat
41            assert 'a' + 'b' == 'ab'
42            assert 'a' + '' == 'a'
43            assert 'a' + 'b' + 'c' == 'abc'
44
45            # try some methods
46            assert 'abc'.indexOf('b')==1
47            assert 'abc'.indexOf('d')==-1
48            assert 'abc'.endsWith('c')
49
50            # comparisons to chars
51            assert 'x'==c'x'
52            assert c'x'=='x'
53            assert '\0'==c'\0'
54
55            # +=
56            s = 'x'
57            s += 'y'
58            assert s=='xy'
59
60            # concat with toString
61            s = 'aoeu'
62            s = s[0].toString + 'b'
63            assert s=='ab'
64
65            # chars
66            assert 'a'[0] == c'a'
67            assert '"'[0] == c'"'
68            assert "'"[0] == c"'"
69
70            # backslashes
71            assert 'cobra\'s lair' == "cobra's lair"
72            assert '"' == "\""
73            assert '\'' == "'"
74            assert '\''[0] == c"'"
75            assert "\""[0] == c'"'
Note: See TracBrowser for help on using the browser.