source: Dev/trunk/src/client/dojox/string/tests/Builder.js @ 498

Last change on this file since 498 was 483, checked in by hendrikvanantwerpen, 11 years ago

Added Dojo 1.9.3 release.

File size: 2.6 KB
Line 
1dojo.provide("dojox.string.tests.Builder");
2
3dojo.require("dojox.string.Builder");
4
5tests.register("dojox.string.tests.Builder", [
6        {
7                name: "Append",
8                runTest: function(t) {
9                        var b = new dojox.string.Builder();
10                        b.append("foo");
11                        t.is("foo", b.toString());
12                        b.append("bar", "baz");
13                        t.is("foobarbaz", b.toString());
14                        b.append("ben").append("zoo");
15                        t.is("foobarbazbenzoo", b.toString());
16                        b.append(5);
17                        t.is("foobarbazbenzoo5", b.toString());
18                }
19        },
20        {
21                name: "AppendArray",
22                runTest: function(t){
23                        var b = new dojox.string.Builder();
24                        b.appendArray([ "foo", "bar", "baz" ]);
25                        t.is("foobarbaz", b.toString());
26                        b.appendArray([ "bar", "baz" ]);
27                        t.is("foobarbazbarbaz", b.toString());
28                        b.appendArray(["ben","zoo"]).appendArray(["zoo","ben"]);
29                        t.is("foobarbazbarbazbenzoozooben", b.toString());
30                        b.appendArray([ 5, 8 ]);
31                        t.is("foobarbazbarbazbenzoozooben58", b.toString());
32                }
33        },
34        {
35                name: "Construction",
36                runTest: function(t){
37                        var b = new dojox.string.Builder();
38                        t.is("", b.toString());
39                        b = new dojox.string.Builder("foo");
40                        t.is("foo", b.toString());
41                }
42        },
43        {
44                name: "Replace",
45                runTest: function(t){
46                        var b = new dojox.string.Builder("foobar");
47                        t.is("foobar", b.toString());
48                        b.replace("foo", "baz");
49                        t.is("bazbar", b.toString());
50                        b.replace("baz", "ben");
51                        t.is("benbar", b.toString());
52                        b.replace("foo", "moo");
53                        t.is("benbar", b.toString());
54                        b.replace("enba", "o");
55                        t.is("bor", b.toString());
56                        b.replace("o", "a").replace("b", "f");
57                        t.is("far", b.toString());
58                }
59        },
60        {
61                name: "Insert",
62                runTest: function(t){
63                        var b = new dojox.string.Builder();
64                        //insert at 0 is prepend
65                        b.insert(0, "foo");
66                        t.is("foo", b.toString());
67                        b.insert(0, "more");
68                        t.is("morefoo", b.toString());
69                       
70                        //insert positions stuff after the 4th character
71                        b.insert(4, "fun");
72                        t.is("morefunfoo", b.toString());
73                       
74                        //insert at len of string is push_back
75                        b.insert(10, "awesome");
76                        t.is("morefunfooawesome", b.toString());
77                       
78                        //insert past len of string is push_back
79                        b.insert(100, "bad");
80                        t.is("morefunfooawesomebad", b.toString());
81                       
82                        b = new dojox.string.Builder();
83                        b.insert(0, "foo").insert(3, "bar").insert(3, "zoo");
84                        t.is("foozoobar", b.toString());
85                }
86        },
87        {
88                name: "Remove",
89                runTest: function(t){
90                        var b = new dojox.string.Builder("foobarbaz");
91                        b.remove(3,3);
92                        t.is("foobaz", b.toString());
93                        b.remove(0,3);
94                        t.is("baz", b.toString());
95                        b.remove(2, 100);
96                        t.is("ba", b.toString());
97                        b.remove(0,0);
98                        t.is("ba", b.toString());
99                        b.append("zbarfoo");
100                        b.remove(5);
101                        t.is("bazba", b.toString());
102                }
103        }
104]);
Note: See TracBrowser for help on using the repository browser.