resin 0.2.1 → 0.2.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (60) hide show
  1. data/README.markdown +2 -0
  2. data/amber/bin/nodecompile.js +3 -3
  3. data/amber/css/amber.css +47 -23
  4. data/amber/images/off.amber.png +0 -0
  5. data/amber/images/offHover.amber.png +0 -0
  6. data/amber/images/sprite.amber.png +0 -0
  7. data/amber/images/tinylogo.amber.png +0 -0
  8. data/amber/js/Benchfib.deploy.js +34 -34
  9. data/amber/js/Benchfib.js +49 -49
  10. data/amber/js/Canvas.deploy.js +937 -937
  11. data/amber/js/Canvas.js +1622 -1622
  12. data/amber/js/Compiler-Tests.deploy.js +97 -0
  13. data/amber/js/Compiler-Tests.js +137 -0
  14. data/amber/js/Compiler.deploy.js +1030 -924
  15. data/amber/js/Compiler.js +1613 -1467
  16. data/amber/js/Documentation.deploy.js +417 -417
  17. data/amber/js/Documentation.js +728 -728
  18. data/amber/js/Examples.deploy.js +24 -13
  19. data/amber/js/Examples.js +36 -19
  20. data/amber/js/IDE.deploy.js +1583 -1527
  21. data/amber/js/IDE.js +2586 -2510
  22. data/amber/js/Kernel-Announcements.deploy.js +19 -19
  23. data/amber/js/Kernel-Announcements.js +28 -28
  24. data/amber/js/Kernel-Classes.deploy.js +332 -229
  25. data/amber/js/Kernel-Classes.js +532 -384
  26. data/amber/js/Kernel-Collections.deploy.js +1516 -1712
  27. data/amber/js/Kernel-Collections.js +2436 -2712
  28. data/amber/js/Kernel-Exceptions.deploy.js +85 -62
  29. data/amber/js/Kernel-Exceptions.js +131 -98
  30. data/amber/js/Kernel-Methods.deploy.js +326 -378
  31. data/amber/js/Kernel-Methods.js +473 -525
  32. data/amber/js/Kernel-Objects.deploy.js +1777 -2428
  33. data/amber/js/Kernel-Objects.js +2599 -3426
  34. data/amber/js/Kernel-Tests.deploy.js +871 -772
  35. data/amber/js/Kernel-Tests.js +1207 -1083
  36. data/amber/js/Kernel-Transcript.deploy.js +57 -57
  37. data/amber/js/Kernel-Transcript.js +94 -94
  38. data/amber/js/SUnit.deploy.js +116 -116
  39. data/amber/js/SUnit.js +211 -211
  40. data/amber/js/amber.js +10 -11
  41. data/amber/js/boot.js +132 -156
  42. data/amber/js/init.js +2 -2
  43. data/amber/js/parser.js +2095 -3014
  44. data/amber/js/parser.pegjs +1 -1
  45. data/amber/st/Benchfib.st +22 -22
  46. data/amber/st/Canvas.st +471 -471
  47. data/amber/st/Compiler-Tests.st +471 -0
  48. data/amber/st/Compiler.st +858 -794
  49. data/amber/st/Examples.st +22 -5
  50. data/amber/st/IDE.st +1326 -1291
  51. data/amber/st/Kernel-Announcements.st +2 -2
  52. data/amber/st/Kernel-Classes.st +148 -90
  53. data/amber/st/Kernel-Collections.st +950 -1061
  54. data/amber/st/Kernel-Exceptions.st +33 -25
  55. data/amber/st/Kernel-Methods.st +151 -151
  56. data/amber/st/Kernel-Objects.st +891 -1036
  57. data/amber/st/Kernel-Tests.st +622 -544
  58. data/amber/st/Kernel-Transcript.st +38 -38
  59. data/amber/st/SUnit.st +53 -53
  60. metadata +27 -20
@@ -1,9 +1,27 @@
1
1
  smalltalk.addPackage('Kernel-Tests', {});
2
2
  smalltalk.addClass('ArrayTest', smalltalk.TestCase, [], 'Kernel-Tests');
3
3
  smalltalk.addMethod(
4
- unescape('_testFirstN'),
4
+ "_testAtIfAbsent",
5
5
  smalltalk.method({
6
- selector: unescape('testFirstN'),
6
+ selector: "testAtIfAbsent",
7
+ fn: function (){
8
+ var self=this;
9
+ var array=nil;
10
+ (array=["hello", "world"]);
11
+ smalltalk.send(self, "_assert_equals_", [smalltalk.send(array, "_at_", [(1)]), "hello"]);
12
+ smalltalk.send(self, "_assert_equals_", [smalltalk.send(array, "_at_", [(2)]), "world"]);
13
+ smalltalk.send(self, "_assert_equals_", [smalltalk.send(array, "_at_ifAbsent_", [(2), (function(){return "not found";})]), "world"]);
14
+ smalltalk.send(self, "_assert_equals_", [smalltalk.send(array, "_at_ifAbsent_", [(0), (function(){return "not found";})]), "not found"]);
15
+ smalltalk.send(self, "_assert_equals_", [smalltalk.send(array, "_at_ifAbsent_", [(-10), (function(){return "not found";})]), "not found"]);
16
+ smalltalk.send(self, "_assert_equals_", [smalltalk.send(array, "_at_ifAbsent_", [(3), (function(){return "not found";})]), "not found"]);
17
+ return self;}
18
+ }),
19
+ smalltalk.ArrayTest);
20
+
21
+ smalltalk.addMethod(
22
+ "_testFirstN",
23
+ smalltalk.method({
24
+ selector: "testFirstN",
7
25
  fn: function (){
8
26
  var self=this;
9
27
  smalltalk.send(self, "_assert_equals_", [[(1),(2),(3)], smalltalk.send([(1),(2),(3),(4),(5)], "_first_", [(3)])]);
@@ -12,9 +30,9 @@ return self;}
12
30
  smalltalk.ArrayTest);
13
31
 
14
32
  smalltalk.addMethod(
15
- unescape('_testIfEmpty'),
33
+ "_testIfEmpty",
16
34
  smalltalk.method({
17
- selector: unescape('testIfEmpty'),
35
+ selector: "testIfEmpty",
18
36
  fn: function (){
19
37
  var self=this;
20
38
  smalltalk.send(self, "_assert_equals_", ["zork", smalltalk.send("", "_ifEmpty_", [(function(){return "zork";})])]);
@@ -24,145 +42,293 @@ smalltalk.ArrayTest);
24
42
 
25
43
 
26
44
 
27
- smalltalk.addClass('StringTest', smalltalk.TestCase, [], 'Kernel-Tests');
45
+ smalltalk.addClass('BlockClosureTest', smalltalk.TestCase, [], 'Kernel-Tests');
28
46
  smalltalk.addMethod(
29
- unescape('_testJoin'),
47
+ "_testCompiledSource",
30
48
  smalltalk.method({
31
- selector: unescape('testJoin'),
32
- fn: function () {
49
+ selector: "testCompiledSource",
50
+ fn: function (){
33
51
  var self=this;
34
- smalltalk.send(self, "_assert_equals_", [unescape("hello%2Cworld"), smalltalk.send(unescape("%2C"), "_join_", [["hello", "world"]])]);
52
+ smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send((function(){return (1) + (1);}), "_compiledSource", []), "_includesSubString_", ["function"])]);
35
53
  return self;}
36
54
  }),
37
- smalltalk.StringTest);
55
+ smalltalk.BlockClosureTest);
38
56
 
39
57
  smalltalk.addMethod(
40
- unescape('_testStreamContents'),
58
+ "_testEnsure",
41
59
  smalltalk.method({
42
- selector: unescape('testStreamContents'),
43
- fn: function () {
60
+ selector: "testEnsure",
61
+ fn: function (){
44
62
  var self=this;
45
- smalltalk.send(self, "_assert_equals_", ["hello world", smalltalk.send((smalltalk.String || String), "_streamContents_", [(function(aStream){return (function($rec){smalltalk.send($rec, "_nextPutAll_", ["hello"]);smalltalk.send($rec, "_space", []);return smalltalk.send($rec, "_nextPutAll_", ["world"]);})(aStream);})])]);
63
+ smalltalk.send(self, "_assert_", [smalltalk.send((function(){return smalltalk.send((smalltalk.Error || Error), "_new", []);}), "_ensure_", [(function(){return true;})])]);
46
64
  return self;}
47
65
  }),
48
- smalltalk.StringTest);
66
+ smalltalk.BlockClosureTest);
49
67
 
50
68
  smalltalk.addMethod(
51
- unescape('_testIncludesSubString'),
69
+ "_testNumArgs",
52
70
  smalltalk.method({
53
- selector: unescape('testIncludesSubString'),
54
- fn: function () {
71
+ selector: "testNumArgs",
72
+ fn: function (){
55
73
  var self=this;
56
- smalltalk.send(self, "_assert_", [smalltalk.send("amber", "_includesSubString_", ["ber"])]);
57
- smalltalk.send(self, "_deny_", [smalltalk.send("amber", "_includesSubString_", ["zork"])]);
74
+ smalltalk.send(self, "_assert_equals_", [smalltalk.send((function(){return nil;}), "_numArgs", []), (0)]);
75
+ smalltalk.send(self, "_assert_equals_", [smalltalk.send((function(a, b){return nil;}), "_numArgs", []), (2)]);
58
76
  return self;}
59
77
  }),
60
- smalltalk.StringTest);
78
+ smalltalk.BlockClosureTest);
61
79
 
62
80
  smalltalk.addMethod(
63
- unescape('_testEquality'),
81
+ "_testOnDo",
64
82
  smalltalk.method({
65
- selector: unescape('testEquality'),
66
- fn: function () {
83
+ selector: "testOnDo",
84
+ fn: function (){
67
85
  var self=this;
68
- smalltalk.send(self, "_assert_", [smalltalk.send("hello", "__eq", ["hello"])]);
69
- smalltalk.send(self, "_deny_", [smalltalk.send("hello", "__eq", ["world"])]);
70
- smalltalk.send(self, "_assert_", [smalltalk.send("hello", "__eq", [smalltalk.send("hello", "_yourself", [])])]);
71
- smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send("hello", "_yourself", []), "__eq", ["hello"])]);
72
- smalltalk.send(self, "_deny_", [smalltalk.send("", "__eq", [(0)])]);
86
+ smalltalk.send(self, "_assert_", [smalltalk.send((function(){return smalltalk.send(smalltalk.send((smalltalk.Error || Error), "_new", []), "_signal", []);}), "_on_do_", [(smalltalk.Error || Error), (function(ex){return true;})])]);
73
87
  return self;}
74
88
  }),
75
- smalltalk.StringTest);
89
+ smalltalk.BlockClosureTest);
76
90
 
77
91
  smalltalk.addMethod(
78
- unescape('_testCopyWithoutAll'),
92
+ "_testValue",
79
93
  smalltalk.method({
80
- selector: unescape('testCopyWithoutAll'),
81
- fn: function () {
94
+ selector: "testValue",
95
+ fn: function (){
82
96
  var self=this;
83
- smalltalk.send(self, "_assert_equals_", ["hello world", smalltalk.send(unescape("*hello*%20*world*"), "_copyWithoutAll_", [unescape("*")])]);
97
+ smalltalk.send(self, "_assert_equals_", [smalltalk.send((function(){return (1) + (1);}), "_value", []), (2)]);
98
+ smalltalk.send(self, "_assert_equals_", [smalltalk.send((function(x){return ((($receiver = x).klass === smalltalk.Number) ? $receiver +(1) : smalltalk.send($receiver, "__plus", [(1)]));}), "_value_", [(2)]), (3)]);
99
+ smalltalk.send(self, "_assert_equals_", [smalltalk.send((function(x, y){return ((($receiver = x).klass === smalltalk.Number) ? $receiver *y : smalltalk.send($receiver, "__star", [y]));}), "_value_value_", [(2), (4)]), (8)]);
100
+ smalltalk.send(self, "_assert_equals_", [smalltalk.send((function(a, b, c){return (1);}), "_value", []), (1)]);
84
101
  return self;}
85
102
  }),
86
- smalltalk.StringTest);
103
+ smalltalk.BlockClosureTest);
87
104
 
88
105
  smalltalk.addMethod(
89
- unescape('_testAt'),
106
+ "_testValueWithPossibleArguments",
90
107
  smalltalk.method({
91
- selector: unescape('testAt'),
92
- fn: function () {
108
+ selector: "testValueWithPossibleArguments",
109
+ fn: function (){
93
110
  var self=this;
94
- smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send("hello", "_at_", [(1)]), "__eq", ["h"])]);
95
- smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send("hello", "_at_", [(5)]), "__eq", ["o"])]);
96
- smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send("hello", "_at_ifAbsent_", [(6), (function(){return nil;})]), "__eq", [nil])]);
111
+ smalltalk.send(self, "_assert_equals_", [smalltalk.send((function(){return (1);}), "_valueWithPossibleArguments_", [[(3), (4)]]), (1)]);
112
+ smalltalk.send(self, "_assert_equals_", [smalltalk.send((function(a){return ((($receiver = a).klass === smalltalk.Number) ? $receiver +(4) : smalltalk.send($receiver, "__plus", [(4)]));}), "_valueWithPossibleArguments_", [[(3), (4)]]), (7)]);
113
+ smalltalk.send(self, "_assert_equals_", [smalltalk.send((function(a, b){return ((($receiver = a).klass === smalltalk.Number) ? $receiver +b : smalltalk.send($receiver, "__plus", [b]));}), "_valueWithPossibleArguments_", [[(3), (4), (5)]]), (7)]);
97
114
  return self;}
98
115
  }),
99
- smalltalk.StringTest);
116
+ smalltalk.BlockClosureTest);
100
117
 
101
118
  smalltalk.addMethod(
102
- unescape('_testAtPut'),
119
+ "_testWhileFalse",
103
120
  smalltalk.method({
104
- selector: unescape('testAtPut'),
105
- fn: function () {
121
+ selector: "testWhileFalse",
122
+ fn: function (){
106
123
  var self=this;
107
- smalltalk.send(self, "_should_raise_", [(function(){return smalltalk.send("hello", "_at_put_", [(1), "a"]);}), (smalltalk.Error || Error)]);
124
+ var i=nil;
125
+ (i=(0));
126
+ (function(){while(!(function(){return ((($receiver = i).klass === smalltalk.Number) ? $receiver >(5) : smalltalk.send($receiver, "__gt", [(5)]));})()) {(function(){return (i=((($receiver = i).klass === smalltalk.Number) ? $receiver +(1) : smalltalk.send($receiver, "__plus", [(1)])));})()}})();
127
+ smalltalk.send(self, "_assert_equals_", [i, (6)]);
128
+ (i=(0));
129
+ (function(){while(!(function(){(i=((($receiver = i).klass === smalltalk.Number) ? $receiver +(1) : smalltalk.send($receiver, "__plus", [(1)])));return ((($receiver = i).klass === smalltalk.Number) ? $receiver >(5) : smalltalk.send($receiver, "__gt", [(5)]));})()) {}})();
130
+ smalltalk.send(self, "_assert_equals_", [i, (6)]);
108
131
  return self;}
109
132
  }),
110
- smalltalk.StringTest);
133
+ smalltalk.BlockClosureTest);
111
134
 
112
135
  smalltalk.addMethod(
113
- unescape('_testSize'),
136
+ "_testWhileTrue",
114
137
  smalltalk.method({
115
- selector: unescape('testSize'),
116
- fn: function () {
138
+ selector: "testWhileTrue",
139
+ fn: function (){
117
140
  var self=this;
118
- smalltalk.send(self, "_assert_equals_", [smalltalk.send("smalltalk", "_size", []), (9)]);
119
- smalltalk.send(self, "_assert_equals_", [smalltalk.send("", "_size", []), (0)]);
141
+ var i=nil;
142
+ (i=(0));
143
+ (function(){while((function(){return ((($receiver = i).klass === smalltalk.Number) ? $receiver <(5) : smalltalk.send($receiver, "__lt", [(5)]));})()) {(function(){return (i=((($receiver = i).klass === smalltalk.Number) ? $receiver +(1) : smalltalk.send($receiver, "__plus", [(1)])));})()}})();
144
+ smalltalk.send(self, "_assert_equals_", [i, (5)]);
145
+ (i=(0));
146
+ (function(){while((function(){(i=((($receiver = i).klass === smalltalk.Number) ? $receiver +(1) : smalltalk.send($receiver, "__plus", [(1)])));return ((($receiver = i).klass === smalltalk.Number) ? $receiver <(5) : smalltalk.send($receiver, "__lt", [(5)]));})()) {}})();
147
+ smalltalk.send(self, "_assert_equals_", [i, (5)]);
120
148
  return self;}
121
149
  }),
122
- smalltalk.StringTest);
150
+ smalltalk.BlockClosureTest);
151
+
152
+
123
153
 
154
+ smalltalk.addClass('BooleanTest', smalltalk.TestCase, [], 'Kernel-Tests');
124
155
  smalltalk.addMethod(
125
- unescape('_testAddRemove'),
156
+ "_testEquality",
126
157
  smalltalk.method({
127
- selector: unescape('testAddRemove'),
128
- fn: function () {
158
+ selector: "testEquality",
159
+ fn: function (){
129
160
  var self=this;
130
- smalltalk.send(self, "_should_raise_", [(function(){return smalltalk.send("hello", "_add_", ["a"]);}), (smalltalk.Error || Error)]);
131
- smalltalk.send(self, "_should_raise_", [(function(){return smalltalk.send("hello", "_remove_", ["h"]);}), (smalltalk.Error || Error)]);
161
+ smalltalk.send(self, "_deny_", [smalltalk.send((0), "__eq", [false])]);
162
+ smalltalk.send(self, "_deny_", [smalltalk.send(false, "__eq", [(0)])]);
163
+ smalltalk.send(self, "_deny_", [smalltalk.send("", "__eq", [false])]);
164
+ smalltalk.send(self, "_deny_", [smalltalk.send(false, "__eq", [""])]);
165
+ smalltalk.send(self, "_assert_", [smalltalk.send(true, "__eq", [true])]);
166
+ smalltalk.send(self, "_deny_", [smalltalk.send(false, "__eq", [true])]);
167
+ smalltalk.send(self, "_deny_", [smalltalk.send(true, "__eq", [false])]);
168
+ smalltalk.send(self, "_assert_", [smalltalk.send(false, "__eq", [false])]);
169
+ smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send(true, "_yourself", []), "__eq", [true])]);
170
+ smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send(true, "_yourself", []), "__eq", [smalltalk.send(true, "_yourself", [])])]);
132
171
  return self;}
133
172
  }),
134
- smalltalk.StringTest);
173
+ smalltalk.BooleanTest);
135
174
 
136
175
  smalltalk.addMethod(
137
- unescape('_testAsArray'),
176
+ "_testIdentity",
138
177
  smalltalk.method({
139
- selector: unescape('testAsArray'),
140
- fn: function () {
178
+ selector: "testIdentity",
179
+ fn: function (){
141
180
  var self=this;
142
- smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send("hello", "_asArray", []), "__eq", [["h", "e", "l", "l", "o"]])]);
181
+ smalltalk.send(self, "_deny_", [smalltalk.send((0), "__eq_eq", [false])]);
182
+ smalltalk.send(self, "_deny_", [smalltalk.send(false, "__eq_eq", [(0)])]);
183
+ smalltalk.send(self, "_deny_", [smalltalk.send("", "__eq_eq", [false])]);
184
+ smalltalk.send(self, "_deny_", [smalltalk.send(false, "__eq_eq", [""])]);
185
+ smalltalk.send(self, "_assert_", [smalltalk.send(true, "__eq_eq", [true])]);
186
+ smalltalk.send(self, "_deny_", [smalltalk.send(false, "__eq_eq", [true])]);
187
+ smalltalk.send(self, "_deny_", [smalltalk.send(true, "__eq_eq", [false])]);
188
+ smalltalk.send(self, "_assert_", [smalltalk.send(false, "__eq_eq", [false])]);
189
+ smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send(true, "_yourself", []), "__eq_eq", [true])]);
190
+ smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send(true, "_yourself", []), "__eq_eq", [smalltalk.send(true, "_yourself", [])])]);
143
191
  return self;}
144
192
  }),
145
- smalltalk.StringTest);
193
+ smalltalk.BooleanTest);
194
+
195
+ smalltalk.addMethod(
196
+ "_testIfTrueIfFalse",
197
+ smalltalk.method({
198
+ selector: "testIfTrueIfFalse",
199
+ fn: function (){
200
+ var self=this;
201
+ smalltalk.send(self, "_assert_", [smalltalk.send(((($receiver = true).klass === smalltalk.Boolean) ? ($receiver ? (function(){return "alternative block";})() : nil) : smalltalk.send($receiver, "_ifTrue_", [(function(){return "alternative block";})])), "__eq", ["alternative block"])]);
202
+ smalltalk.send(self, "_assert_", [smalltalk.send(((($receiver = true).klass === smalltalk.Boolean) ? (! $receiver ? (function(){return "alternative block";})() : nil) : smalltalk.send($receiver, "_ifFalse_", [(function(){return "alternative block";})])), "__eq", [nil])]);
203
+ smalltalk.send(self, "_assert_", [smalltalk.send(((($receiver = false).klass === smalltalk.Boolean) ? ($receiver ? (function(){return "alternative block";})() : nil) : smalltalk.send($receiver, "_ifTrue_", [(function(){return "alternative block";})])), "__eq", [nil])]);
204
+ smalltalk.send(self, "_assert_", [smalltalk.send(((($receiver = false).klass === smalltalk.Boolean) ? (! $receiver ? (function(){return "alternative block";})() : nil) : smalltalk.send($receiver, "_ifFalse_", [(function(){return "alternative block";})])), "__eq", ["alternative block"])]);
205
+ smalltalk.send(self, "_assert_", [smalltalk.send(((($receiver = false).klass === smalltalk.Boolean) ? ($receiver ? (function(){return "alternative block";})() : (function(){return "alternative block2";})()) : smalltalk.send($receiver, "_ifTrue_ifFalse_", [(function(){return "alternative block";}), (function(){return "alternative block2";})])), "__eq", ["alternative block2"])]);
206
+ smalltalk.send(self, "_assert_", [smalltalk.send(((($receiver = false).klass === smalltalk.Boolean) ? (! $receiver ? (function(){return "alternative block";})() : (function(){return "alternative block2";})()) : smalltalk.send($receiver, "_ifFalse_ifTrue_", [(function(){return "alternative block";}), (function(){return "alternative block2";})])), "__eq", ["alternative block"])]);
207
+ smalltalk.send(self, "_assert_", [smalltalk.send(((($receiver = true).klass === smalltalk.Boolean) ? ($receiver ? (function(){return "alternative block";})() : (function(){return "alternative block2";})()) : smalltalk.send($receiver, "_ifTrue_ifFalse_", [(function(){return "alternative block";}), (function(){return "alternative block2";})])), "__eq", ["alternative block"])]);
208
+ smalltalk.send(self, "_assert_", [smalltalk.send(((($receiver = true).klass === smalltalk.Boolean) ? (! $receiver ? (function(){return "alternative block";})() : (function(){return "alternative block2";})()) : smalltalk.send($receiver, "_ifFalse_ifTrue_", [(function(){return "alternative block";}), (function(){return "alternative block2";})])), "__eq", ["alternative block2"])]);
209
+ return self;}
210
+ }),
211
+ smalltalk.BooleanTest);
212
+
213
+ smalltalk.addMethod(
214
+ "_testLogic",
215
+ smalltalk.method({
216
+ selector: "testLogic",
217
+ fn: function (){
218
+ var self=this;
219
+ (function($rec){smalltalk.send($rec, "_assert_", [smalltalk.send(true, "_&", [true])]);smalltalk.send($rec, "_deny_", [smalltalk.send(true, "_&", [false])]);smalltalk.send($rec, "_deny_", [smalltalk.send(false, "_&", [true])]);return smalltalk.send($rec, "_deny_", [smalltalk.send(false, "_&", [false])]);})(self);
220
+ (function($rec){smalltalk.send($rec, "_assert_", [smalltalk.send(true, "_|", [true])]);smalltalk.send($rec, "_assert_", [smalltalk.send(true, "_|", [false])]);smalltalk.send($rec, "_assert_", [smalltalk.send(false, "_|", [true])]);return smalltalk.send($rec, "_deny_", [smalltalk.send(false, "_|", [false])]);})(self);
221
+ (function($rec){smalltalk.send($rec, "_assert_", [smalltalk.send(true, "_&", [(1) > (0)])]);smalltalk.send($rec, "_deny_", [smalltalk.send((1) > (0), "_&", [false])]);return smalltalk.send($rec, "_deny_", [smalltalk.send((1) > (0), "_&", [(1) > (2)])]);})(self);
222
+ (function($rec){smalltalk.send($rec, "_assert_", [smalltalk.send(false, "_|", [(1) > (0)])]);smalltalk.send($rec, "_assert_", [smalltalk.send((1) > (0), "_|", [false])]);return smalltalk.send($rec, "_assert_", [smalltalk.send((1) > (0), "_|", [(1) > (2)])]);})(self);
223
+ return self;}
224
+ }),
225
+ smalltalk.BooleanTest);
226
+
227
+ smalltalk.addMethod(
228
+ "_testLogicKeywords",
229
+ smalltalk.method({
230
+ selector: "testLogicKeywords",
231
+ fn: function (){
232
+ var self=this;
233
+ (function($rec){smalltalk.send($rec, "_assert_", [smalltalk.send(true, "_and_", [(function(){return true;})])]);smalltalk.send($rec, "_deny_", [smalltalk.send(true, "_and_", [(function(){return false;})])]);smalltalk.send($rec, "_deny_", [smalltalk.send(false, "_and_", [(function(){return true;})])]);return smalltalk.send($rec, "_deny_", [smalltalk.send(false, "_and_", [(function(){return false;})])]);})(self);
234
+ (function($rec){smalltalk.send($rec, "_assert_", [smalltalk.send(true, "_or_", [(function(){return true;})])]);smalltalk.send($rec, "_assert_", [smalltalk.send(true, "_or_", [(function(){return false;})])]);smalltalk.send($rec, "_assert_", [smalltalk.send(false, "_or_", [(function(){return true;})])]);return smalltalk.send($rec, "_deny_", [smalltalk.send(false, "_or_", [(function(){return false;})])]);})(self);
235
+ (function($rec){smalltalk.send($rec, "_assert_", [smalltalk.send(true, "_and_", [(function(){return (1) > (0);})])]);smalltalk.send($rec, "_deny_", [smalltalk.send((1) > (0), "_and_", [(function(){return false;})])]);return smalltalk.send($rec, "_deny_", [smalltalk.send((1) > (0), "_and_", [(function(){return (1) > (2);})])]);})(self);
236
+ (function($rec){smalltalk.send($rec, "_assert_", [smalltalk.send(false, "_or_", [(function(){return (1) > (0);})])]);smalltalk.send($rec, "_assert_", [smalltalk.send((1) > (0), "_or_", [(function(){return false;})])]);return smalltalk.send($rec, "_assert_", [smalltalk.send((1) > (0), "_or_", [(function(){return (1) > (2);})])]);})(self);
237
+ return self;}
238
+ }),
239
+ smalltalk.BooleanTest);
240
+
241
+
242
+
243
+ smalltalk.addClass('ClassBuilderTest', smalltalk.TestCase, ['builder', 'theClass'], 'Kernel-Tests');
244
+ smalltalk.addMethod(
245
+ "_setUp",
246
+ smalltalk.method({
247
+ selector: "setUp",
248
+ fn: function (){
249
+ var self=this;
250
+ (self['@builder']=smalltalk.send((smalltalk.ClassBuilder || ClassBuilder), "_new", []));
251
+ return self;}
252
+ }),
253
+ smalltalk.ClassBuilderTest);
254
+
255
+ smalltalk.addMethod(
256
+ "_tearDown",
257
+ smalltalk.method({
258
+ selector: "tearDown",
259
+ fn: function (){
260
+ var self=this;
261
+ (($receiver = self['@theClass']) != nil && $receiver != undefined) ? (function(){smalltalk.send(smalltalk.send((smalltalk.Smalltalk || Smalltalk), "_current", []), "_removeClass_", [self['@theClass']]);return (self['@theClass']=nil);})() : nil;
262
+ return self;}
263
+ }),
264
+ smalltalk.ClassBuilderTest);
265
+
266
+ smalltalk.addMethod(
267
+ "_testClassCopy",
268
+ smalltalk.method({
269
+ selector: "testClassCopy",
270
+ fn: function (){
271
+ var self=this;
272
+ (self['@theClass']=smalltalk.send(self['@builder'], "_copyClass_named_", [(smalltalk.ObjectMock || ObjectMock), "ObjectMock2"]));
273
+ smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send(self['@theClass'], "_superclass", []), "__eq_eq", [smalltalk.send((smalltalk.ObjectMock || ObjectMock), "_superclass", [])])]);
274
+ smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send(self['@theClass'], "_instanceVariableNames", []), "__eq_eq", [smalltalk.send((smalltalk.ObjectMock || ObjectMock), "_instanceVariableNames", [])])]);
275
+ smalltalk.send(self, "_assert_equals_", [smalltalk.send(self['@theClass'], "_name", []), "ObjectMock2"]);
276
+ smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send(self['@theClass'], "_package", []), "__eq_eq", [smalltalk.send((smalltalk.ObjectMock || ObjectMock), "_package", [])])]);
277
+ smalltalk.send(self, "_assert_equals_", [smalltalk.send(smalltalk.send(self['@theClass'], "_methodDictionary", []), "_keys", []), smalltalk.send(smalltalk.send((smalltalk.ObjectMock || ObjectMock), "_methodDictionary", []), "_keys", [])]);
278
+ return self;}
279
+ }),
280
+ smalltalk.ClassBuilderTest);
281
+
282
+ smalltalk.addMethod(
283
+ "_testInstanceVariableNames",
284
+ smalltalk.method({
285
+ selector: "testInstanceVariableNames",
286
+ fn: function (){
287
+ var self=this;
288
+ smalltalk.send(self, "_assert_equals_", [smalltalk.send(self['@builder'], "_instanceVariableNamesFor_", [" hello world "]), ["hello", "world"]]);
289
+ return self;}
290
+ }),
291
+ smalltalk.ClassBuilderTest);
146
292
 
147
293
 
148
294
 
149
295
  smalltalk.addClass('DictionaryTest', smalltalk.TestCase, [], 'Kernel-Tests');
150
296
  smalltalk.addMethod(
151
- unescape('_testPrintString'),
297
+ "_testAccessing",
298
+ smalltalk.method({
299
+ selector: "testAccessing",
300
+ fn: function (){
301
+ var self=this;
302
+ var d=nil;
303
+ (d=smalltalk.send((smalltalk.Dictionary || Dictionary), "_new", []));
304
+ smalltalk.send(d, "_at_put_", ["hello", "world"]);
305
+ smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send(d, "_at_", ["hello"]), "__eq", ["world"])]);
306
+ smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send(d, "_at_ifAbsent_", ["hello", (function(){return nil;})]), "__eq", ["world"])]);
307
+ smalltalk.send(self, "_deny_", [smalltalk.send(smalltalk.send(d, "_at_ifAbsent_", ["foo", (function(){return nil;})]), "__eq", ["world"])]);
308
+ smalltalk.send(d, "_at_put_", [(1), (2)]);
309
+ smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send(d, "_at_", [(1)]), "__eq", [(2)])]);
310
+ smalltalk.send(d, "_at_put_", [smalltalk.send((1), "__at", [(3)]), (3)]);
311
+ smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send(d, "_at_", [smalltalk.send((1), "__at", [(3)])]), "__eq", [(3)])]);
312
+ return self;}
313
+ }),
314
+ smalltalk.DictionaryTest);
315
+
316
+ smalltalk.addMethod(
317
+ "_testDynamicDictionaries",
152
318
  smalltalk.method({
153
- selector: unescape('testPrintString'),
154
- fn: function () {
319
+ selector: "testDynamicDictionaries",
320
+ fn: function (){
155
321
  var self=this;
156
- smalltalk.send(self, "_assert_equals_", [unescape("a%20Dictionary%28%27firstname%27%20-%3E%20%27James%27%20%2C%20%27lastname%27%20-%3E%20%27Bond%27%29"), (function($rec){smalltalk.send($rec, "_at_put_", ["firstname", "James"]);smalltalk.send($rec, "_at_put_", ["lastname", "Bond"]);return smalltalk.send($rec, "_printString", []);})(smalltalk.send((smalltalk.Dictionary || Dictionary), "_new", []))]);
322
+ smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send(smalltalk.HashedCollection._fromPairs_([smalltalk.send("hello", "__minus_gt", [(1)])]), "_asDictionary", []), "__eq", [smalltalk.send((smalltalk.Dictionary || Dictionary), "_with_", [smalltalk.send("hello", "__minus_gt", [(1)])])])]);
157
323
  return self;}
158
324
  }),
159
325
  smalltalk.DictionaryTest);
160
326
 
161
327
  smalltalk.addMethod(
162
- unescape('_testEquality'),
328
+ "_testEquality",
163
329
  smalltalk.method({
164
- selector: unescape('testEquality'),
165
- fn: function () {
330
+ selector: "testEquality",
331
+ fn: function (){
166
332
  var self=this;
167
333
  var d1=nil;
168
334
  var d2=nil;
@@ -181,205 +347,210 @@ return self;}
181
347
  smalltalk.DictionaryTest);
182
348
 
183
349
  smalltalk.addMethod(
184
- unescape('_testDynamicDictionaries'),
350
+ "_testKeys",
185
351
  smalltalk.method({
186
- selector: unescape('testDynamicDictionaries'),
187
- fn: function () {
352
+ selector: "testKeys",
353
+ fn: function (){
188
354
  var self=this;
189
- smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send(smalltalk.HashedCollection._fromPairs_([smalltalk.send("hello", "__minus_gt", [(1)])]), "_asDictionary", []), "__eq", [smalltalk.send((smalltalk.Dictionary || Dictionary), "_with_", [smalltalk.send("hello", "__minus_gt", [(1)])])])]);
355
+ var d=nil;
356
+ (d=smalltalk.send((smalltalk.Dictionary || Dictionary), "_new", []));
357
+ smalltalk.send(d, "_at_put_", [(1), (2)]);
358
+ smalltalk.send(d, "_at_put_", [(2), (3)]);
359
+ smalltalk.send(d, "_at_put_", [(3), (4)]);
360
+ smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send(d, "_keys", []), "__eq", [[(1), (2), (3)]])]);
361
+ return self;}
362
+ }),
363
+ smalltalk.DictionaryTest);
364
+
365
+ smalltalk.addMethod(
366
+ "_testPrintString",
367
+ smalltalk.method({
368
+ selector: "testPrintString",
369
+ fn: function (){
370
+ var self=this;
371
+ smalltalk.send(self, "_assert_equals_", ["a Dictionary('firstname' -> 'James' , 'lastname' -> 'Bond')", (function($rec){smalltalk.send($rec, "_at_put_", ["firstname", "James"]);smalltalk.send($rec, "_at_put_", ["lastname", "Bond"]);return smalltalk.send($rec, "_printString", []);})(smalltalk.send((smalltalk.Dictionary || Dictionary), "_new", []))]);
190
372
  return self;}
191
373
  }),
192
374
  smalltalk.DictionaryTest);
193
375
 
194
376
  smalltalk.addMethod(
195
- unescape('_testAccessing'),
377
+ "_testRemoveKey",
196
378
  smalltalk.method({
197
- selector: unescape('testAccessing'),
198
- fn: function () {
379
+ selector: "testRemoveKey",
380
+ fn: function (){
199
381
  var self=this;
200
382
  var d=nil;
383
+ var key=nil;
201
384
  (d=smalltalk.send((smalltalk.Dictionary || Dictionary), "_new", []));
202
- smalltalk.send(d, "_at_put_", ["hello", "world"]);
203
- smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send(d, "_at_", ["hello"]), "__eq", ["world"])]);
204
- smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send(d, "_at_ifAbsent_", ["hello", (function(){return nil;})]), "__eq", ["world"])]);
205
- smalltalk.send(self, "_deny_", [smalltalk.send(smalltalk.send(d, "_at_ifAbsent_", ["foo", (function(){return nil;})]), "__eq", ["world"])]);
206
385
  smalltalk.send(d, "_at_put_", [(1), (2)]);
207
- smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send(d, "_at_", [(1)]), "__eq", [(2)])]);
208
- smalltalk.send(d, "_at_put_", [smalltalk.send((1), "__at", [(3)]), (3)]);
209
- smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send(d, "_at_", [smalltalk.send((1), "__at", [(3)])]), "__eq", [(3)])]);
386
+ smalltalk.send(d, "_at_put_", [(2), (3)]);
387
+ smalltalk.send(d, "_at_put_", [(3), (4)]);
388
+ (key=(2));
389
+ smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send(d, "_keys", []), "__eq", [[(1), (2), (3)]])]);
390
+ smalltalk.send(d, "_removeKey_", [key]);
391
+ smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send(d, "_keys", []), "__eq", [[(1), (3)]])]);
392
+ smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send(d, "_values", []), "__eq", [[(2), (4)]])]);
393
+ smalltalk.send(self, "_deny_", [smalltalk.send(d, "_includesKey_", [(2)])]);
210
394
  return self;}
211
395
  }),
212
396
  smalltalk.DictionaryTest);
213
397
 
214
398
  smalltalk.addMethod(
215
- unescape('_testSize'),
399
+ "_testRemoveKeyIfAbsent",
216
400
  smalltalk.method({
217
- selector: unescape('testSize'),
218
- fn: function () {
401
+ selector: "testRemoveKeyIfAbsent",
402
+ fn: function (){
219
403
  var self=this;
220
404
  var d=nil;
405
+ var key=nil;
221
406
  (d=smalltalk.send((smalltalk.Dictionary || Dictionary), "_new", []));
222
- smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send(d, "_size", []), "__eq", [(0)])]);
223
407
  smalltalk.send(d, "_at_put_", [(1), (2)]);
224
- smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send(d, "_size", []), "__eq", [(1)])]);
225
408
  smalltalk.send(d, "_at_put_", [(2), (3)]);
226
- smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send(d, "_size", []), "__eq", [(2)])]);
409
+ smalltalk.send(d, "_at_put_", [(3), (4)]);
410
+ (key=(2));
411
+ smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send(d, "_removeKey_", [key]), "__eq", [(3)])]);
412
+ (key=(3));
413
+ smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send(d, "_removeKey_ifAbsent_", [key, (function(){return (42);})]), "__eq", [(4)])]);
414
+ (key="why");
415
+ smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send(d, "_removeKey_ifAbsent_", [key, (function(){return (42);})]), "__eq", [(42)])]);
227
416
  return self;}
228
417
  }),
229
418
  smalltalk.DictionaryTest);
230
419
 
231
420
  smalltalk.addMethod(
232
- unescape('_testValues'),
421
+ "_testSize",
233
422
  smalltalk.method({
234
- selector: unescape('testValues'),
235
- fn: function () {
423
+ selector: "testSize",
424
+ fn: function (){
236
425
  var self=this;
237
426
  var d=nil;
238
427
  (d=smalltalk.send((smalltalk.Dictionary || Dictionary), "_new", []));
428
+ smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send(d, "_size", []), "__eq", [(0)])]);
239
429
  smalltalk.send(d, "_at_put_", [(1), (2)]);
430
+ smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send(d, "_size", []), "__eq", [(1)])]);
240
431
  smalltalk.send(d, "_at_put_", [(2), (3)]);
241
- smalltalk.send(d, "_at_put_", [(3), (4)]);
242
- smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send(d, "_values", []), "__eq", [[(2), (3), (4)]])]);
432
+ smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send(d, "_size", []), "__eq", [(2)])]);
243
433
  return self;}
244
434
  }),
245
435
  smalltalk.DictionaryTest);
246
436
 
247
437
  smalltalk.addMethod(
248
- unescape('_testKeys'),
438
+ "_testValues",
249
439
  smalltalk.method({
250
- selector: unescape('testKeys'),
251
- fn: function () {
440
+ selector: "testValues",
441
+ fn: function (){
252
442
  var self=this;
253
443
  var d=nil;
254
444
  (d=smalltalk.send((smalltalk.Dictionary || Dictionary), "_new", []));
255
445
  smalltalk.send(d, "_at_put_", [(1), (2)]);
256
446
  smalltalk.send(d, "_at_put_", [(2), (3)]);
257
447
  smalltalk.send(d, "_at_put_", [(3), (4)]);
258
- smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send(d, "_keys", []), "__eq", [[(1), (2), (3)]])]);
448
+ smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send(d, "_values", []), "__eq", [[(2), (3), (4)]])]);
259
449
  return self;}
260
450
  }),
261
451
  smalltalk.DictionaryTest);
262
452
 
263
453
 
264
454
 
265
- smalltalk.addClass('BooleanTest', smalltalk.TestCase, [], 'Kernel-Tests');
455
+ smalltalk.addClass('JSObjectProxyTest', smalltalk.TestCase, [], 'Kernel-Tests');
266
456
  smalltalk.addMethod(
267
- unescape('_testLogic'),
457
+ "_jsObject",
268
458
  smalltalk.method({
269
- selector: unescape('testLogic'),
270
- fn: function () {
459
+ selector: "jsObject",
460
+ fn: function (){
271
461
  var self=this;
272
- (function($rec){smalltalk.send($rec, "_assert_", [smalltalk.send(true, "_&", [true])]);smalltalk.send($rec, "_deny_", [smalltalk.send(true, "_&", [false])]);smalltalk.send($rec, "_deny_", [smalltalk.send(false, "_&", [true])]);return smalltalk.send($rec, "_deny_", [smalltalk.send(false, "_&", [false])]);})(self);
273
- (function($rec){smalltalk.send($rec, "_assert_", [smalltalk.send(true, "_|", [true])]);smalltalk.send($rec, "_assert_", [smalltalk.send(true, "_|", [false])]);smalltalk.send($rec, "_assert_", [smalltalk.send(false, "_|", [true])]);return smalltalk.send($rec, "_deny_", [smalltalk.send(false, "_|", [false])]);})(self);
274
- (function($rec){smalltalk.send($rec, "_assert_", [smalltalk.send(true, "_&", [(1) > (0)])]);smalltalk.send($rec, "_deny_", [smalltalk.send((1) > (0), "_&", [false])]);return smalltalk.send($rec, "_deny_", [smalltalk.send((1) > (0), "_&", [(1) > (2)])]);})(self);
275
- (function($rec){smalltalk.send($rec, "_assert_", [smalltalk.send(false, "_|", [(1) > (0)])]);smalltalk.send($rec, "_assert_", [smalltalk.send((1) > (0), "_|", [false])]);return smalltalk.send($rec, "_assert_", [smalltalk.send((1) > (0), "_|", [(1) > (2)])]);})(self);
462
+ return jsObject = {a: 1, b: function() {return 2;}, c: function(object) {return object;}};
276
463
  return self;}
277
464
  }),
278
- smalltalk.BooleanTest);
465
+ smalltalk.JSObjectProxyTest);
279
466
 
280
467
  smalltalk.addMethod(
281
- unescape('_testEquality'),
468
+ "_testDNU",
282
469
  smalltalk.method({
283
- selector: unescape('testEquality'),
284
- fn: function () {
470
+ selector: "testDNU",
471
+ fn: function (){
285
472
  var self=this;
286
- smalltalk.send(self, "_deny_", [smalltalk.send((0), "__eq", [false])]);
287
- smalltalk.send(self, "_deny_", [smalltalk.send(false, "__eq", [(0)])]);
288
- smalltalk.send(self, "_deny_", [smalltalk.send("", "__eq", [false])]);
289
- smalltalk.send(self, "_deny_", [smalltalk.send(false, "__eq", [""])]);
290
- smalltalk.send(self, "_assert_", [smalltalk.send(true, "__eq", [true])]);
291
- smalltalk.send(self, "_deny_", [smalltalk.send(false, "__eq", [true])]);
292
- smalltalk.send(self, "_deny_", [smalltalk.send(true, "__eq", [false])]);
293
- smalltalk.send(self, "_assert_", [smalltalk.send(false, "__eq", [false])]);
294
- smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send(true, "_yourself", []), "__eq", [true])]);
295
- smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send(true, "_yourself", []), "__eq", [smalltalk.send(true, "_yourself", [])])]);
473
+ smalltalk.send(self, "_should_raise_", [(function(){return smalltalk.send(smalltalk.send(self, "_jsObject", []), "_foo", []);}), (smalltalk.MessageNotUnderstood || MessageNotUnderstood)]);
296
474
  return self;}
297
475
  }),
298
- smalltalk.BooleanTest);
476
+ smalltalk.JSObjectProxyTest);
299
477
 
300
478
  smalltalk.addMethod(
301
- unescape('_testLogicKeywords'),
479
+ "_testMessageSend",
302
480
  smalltalk.method({
303
- selector: unescape('testLogicKeywords'),
304
- fn: function () {
481
+ selector: "testMessageSend",
482
+ fn: function (){
305
483
  var self=this;
306
- (function($rec){smalltalk.send($rec, "_assert_", [smalltalk.send(true, "_and_", [(function(){return true;})])]);smalltalk.send($rec, "_deny_", [smalltalk.send(true, "_and_", [(function(){return false;})])]);smalltalk.send($rec, "_deny_", [smalltalk.send(false, "_and_", [(function(){return true;})])]);return smalltalk.send($rec, "_deny_", [smalltalk.send(false, "_and_", [(function(){return false;})])]);})(self);
307
- (function($rec){smalltalk.send($rec, "_assert_", [smalltalk.send(true, "_or_", [(function(){return true;})])]);smalltalk.send($rec, "_assert_", [smalltalk.send(true, "_or_", [(function(){return false;})])]);smalltalk.send($rec, "_assert_", [smalltalk.send(false, "_or_", [(function(){return true;})])]);return smalltalk.send($rec, "_deny_", [smalltalk.send(false, "_or_", [(function(){return false;})])]);})(self);
308
- (function($rec){smalltalk.send($rec, "_assert_", [smalltalk.send(true, "_and_", [(function(){return (1) > (0);})])]);smalltalk.send($rec, "_deny_", [smalltalk.send((1) > (0), "_and_", [(function(){return false;})])]);return smalltalk.send($rec, "_deny_", [smalltalk.send((1) > (0), "_and_", [(function(){return (1) > (2);})])]);})(self);
309
- (function($rec){smalltalk.send($rec, "_assert_", [smalltalk.send(false, "_or_", [(function(){return (1) > (0);})])]);smalltalk.send($rec, "_assert_", [smalltalk.send((1) > (0), "_or_", [(function(){return false;})])]);return smalltalk.send($rec, "_assert_", [smalltalk.send((1) > (0), "_or_", [(function(){return (1) > (2);})])]);})(self);
484
+ smalltalk.send(self, "_assert_equals_", [smalltalk.send(smalltalk.send(self, "_jsObject", []), "_a", []), (1)]);
485
+ smalltalk.send(self, "_assert_equals_", [smalltalk.send(smalltalk.send(self, "_jsObject", []), "_b", []), (2)]);
486
+ smalltalk.send(self, "_assert_equals_", [smalltalk.send(smalltalk.send(self, "_jsObject", []), "_c_", [(3)]), (3)]);
310
487
  return self;}
311
488
  }),
312
- smalltalk.BooleanTest);
489
+ smalltalk.JSObjectProxyTest);
313
490
 
314
491
  smalltalk.addMethod(
315
- unescape('_testIfTrueIfFalse'),
492
+ "_testMethodWithArguments",
316
493
  smalltalk.method({
317
- selector: unescape('testIfTrueIfFalse'),
318
- fn: function () {
494
+ selector: "testMethodWithArguments",
495
+ fn: function (){
319
496
  var self=this;
320
- smalltalk.send(self, "_assert_", [smalltalk.send(((($receiver = true).klass === smalltalk.Boolean) ? ($receiver ? (function(){return "alternative block";})() : nil) : smalltalk.send($receiver, "_ifTrue_", [(function(){return "alternative block";})])), "__eq", ["alternative block"])]);
321
- smalltalk.send(self, "_assert_", [smalltalk.send(((($receiver = true).klass === smalltalk.Boolean) ? (! $receiver ? (function(){return "alternative block";})() : nil) : smalltalk.send($receiver, "_ifFalse_", [(function(){return "alternative block";})])), "__eq", [nil])]);
322
- smalltalk.send(self, "_assert_", [smalltalk.send(((($receiver = false).klass === smalltalk.Boolean) ? ($receiver ? (function(){return "alternative block";})() : nil) : smalltalk.send($receiver, "_ifTrue_", [(function(){return "alternative block";})])), "__eq", [nil])]);
323
- smalltalk.send(self, "_assert_", [smalltalk.send(((($receiver = false).klass === smalltalk.Boolean) ? (! $receiver ? (function(){return "alternative block";})() : nil) : smalltalk.send($receiver, "_ifFalse_", [(function(){return "alternative block";})])), "__eq", ["alternative block"])]);
324
- smalltalk.send(self, "_assert_", [smalltalk.send(((($receiver = false).klass === smalltalk.Boolean) ? ($receiver ? (function(){return "alternative block";})() : (function(){return "alternative block2";})()) : smalltalk.send($receiver, "_ifTrue_ifFalse_", [(function(){return "alternative block";}), (function(){return "alternative block2";})])), "__eq", ["alternative block2"])]);
325
- smalltalk.send(self, "_assert_", [smalltalk.send(((($receiver = false).klass === smalltalk.Boolean) ? (! $receiver ? (function(){return "alternative block";})() : (function(){return "alternative block2";})()) : smalltalk.send($receiver, "_ifFalse_ifTrue_", [(function(){return "alternative block";}), (function(){return "alternative block2";})])), "__eq", ["alternative block"])]);
326
- smalltalk.send(self, "_assert_", [smalltalk.send(((($receiver = true).klass === smalltalk.Boolean) ? ($receiver ? (function(){return "alternative block";})() : (function(){return "alternative block2";})()) : smalltalk.send($receiver, "_ifTrue_ifFalse_", [(function(){return "alternative block";}), (function(){return "alternative block2";})])), "__eq", ["alternative block"])]);
327
- smalltalk.send(self, "_assert_", [smalltalk.send(((($receiver = true).klass === smalltalk.Boolean) ? (! $receiver ? (function(){return "alternative block";})() : (function(){return "alternative block2";})()) : smalltalk.send($receiver, "_ifFalse_ifTrue_", [(function(){return "alternative block";}), (function(){return "alternative block2";})])), "__eq", ["alternative block2"])]);
497
+ smalltalk.send(self, "_deny_", [smalltalk.send(smalltalk.send("body", "_asJQuery", []), "_hasClass_", ["amber"])]);
498
+ smalltalk.send(smalltalk.send("body", "_asJQuery", []), "_addClass_", ["amber"]);
499
+ smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send("body", "_asJQuery", []), "_hasClass_", ["amber"])]);
500
+ smalltalk.send(smalltalk.send("body", "_asJQuery", []), "_removeClass_", ["amber"]);
501
+ smalltalk.send(self, "_deny_", [smalltalk.send(smalltalk.send("body", "_asJQuery", []), "_hasClass_", ["amber"])]);
328
502
  return self;}
329
503
  }),
330
- smalltalk.BooleanTest);
331
-
504
+ smalltalk.JSObjectProxyTest);
332
505
 
506
+ smalltalk.addMethod(
507
+ "_testPrinting",
508
+ smalltalk.method({
509
+ selector: "testPrinting",
510
+ fn: function (){
511
+ var self=this;
512
+ smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send(smalltalk.send(self, "_jsObject", []), "_printString", []), "__eq", ["[object Object]"])]);
513
+ return self;}
514
+ }),
515
+ smalltalk.JSObjectProxyTest);
333
516
 
334
- smalltalk.addClass('NumberTest', smalltalk.TestCase, [], 'Kernel-Tests');
335
517
  smalltalk.addMethod(
336
- unescape('_testPrintShowingDecimalPlaces'),
518
+ "_testPropertyThatReturnsEmptyString",
337
519
  smalltalk.method({
338
- selector: unescape('testPrintShowingDecimalPlaces'),
339
- fn: function () {
520
+ selector: "testPropertyThatReturnsEmptyString",
521
+ fn: function (){
340
522
  var self=this;
341
- smalltalk.send(self, "_assert_equals_", ["23.00", smalltalk.send((23), "_printShowingDecimalPlaces_", [(2)])]);
342
- smalltalk.send(self, "_assert_equals_", ["23.57", smalltalk.send((23.5698), "_printShowingDecimalPlaces_", [(2)])]);
343
- smalltalk.send(self, "_assert_equals_", [unescape("-234.56700"), smalltalk.send(smalltalk.send((234.567), "_negated", []), "_printShowingDecimalPlaces_", [(5)])]);
344
- smalltalk.send(self, "_assert_equals_", ["23", smalltalk.send((23.4567), "_printShowingDecimalPlaces_", [(0)])]);
345
- smalltalk.send(self, "_assert_equals_", ["24", smalltalk.send((23.5567), "_printShowingDecimalPlaces_", [(0)])]);
346
- smalltalk.send(self, "_assert_equals_", [unescape("-23"), smalltalk.send(smalltalk.send((23.4567), "_negated", []), "_printShowingDecimalPlaces_", [(0)])]);
347
- smalltalk.send(self, "_assert_equals_", [unescape("-24"), smalltalk.send(smalltalk.send((23.5567), "_negated", []), "_printShowingDecimalPlaces_", [(0)])]);
348
- smalltalk.send(self, "_assert_equals_", ["100000000.0", smalltalk.send((100000000), "_printShowingDecimalPlaces_", [(1)])]);
349
- smalltalk.send(self, "_assert_equals_", ["0.98000", smalltalk.send((0.98), "_printShowingDecimalPlaces_", [(5)])]);
350
- smalltalk.send(self, "_assert_equals_", [unescape("-0.98"), smalltalk.send(smalltalk.send((0.98), "_negated", []), "_printShowingDecimalPlaces_", [(2)])]);
351
- smalltalk.send(self, "_assert_equals_", ["2.57", smalltalk.send((2.567), "_printShowingDecimalPlaces_", [(2)])]);
352
- smalltalk.send(self, "_assert_equals_", [unescape("-2.57"), smalltalk.send((-2.567), "_printShowingDecimalPlaces_", [(2)])]);
353
- smalltalk.send(self, "_assert_equals_", ["0.00", smalltalk.send((0), "_printShowingDecimalPlaces_", [(2)])]);
523
+ document.location.hash = '';
524
+ smalltalk.send(self, "_assert_equals_", ["", smalltalk.send(smalltalk.send((typeof document == 'undefined' ? nil : document), "_location", []), "_hash", [])]);
525
+ smalltalk.send(smalltalk.send((typeof document == 'undefined' ? nil : document), "_location", []), "_hash_", ["test"]);
526
+ smalltalk.send(self, "_assert_equals_", ["#test", smalltalk.send(smalltalk.send((typeof document == 'undefined' ? nil : document), "_location", []), "_hash", [])]);
354
527
  return self;}
355
528
  }),
356
- smalltalk.NumberTest);
529
+ smalltalk.JSObjectProxyTest);
357
530
 
358
531
  smalltalk.addMethod(
359
- unescape('_testEquality'),
532
+ "_testYourself",
360
533
  smalltalk.method({
361
- selector: unescape('testEquality'),
362
- fn: function () {
534
+ selector: "testYourself",
535
+ fn: function (){
363
536
  var self=this;
364
- smalltalk.send(self, "_assert_", [smalltalk.send((1), "__eq", [(1)])]);
365
- smalltalk.send(self, "_assert_", [smalltalk.send((0), "__eq", [(0)])]);
366
- smalltalk.send(self, "_deny_", [smalltalk.send((1), "__eq", [(0)])]);
367
- smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send((1), "_yourself", []), "__eq", [(1)])]);
368
- smalltalk.send(self, "_assert_", [smalltalk.send((1), "__eq", [smalltalk.send((1), "_yourself", [])])]);
369
- smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send((1), "_yourself", []), "__eq", [smalltalk.send((1), "_yourself", [])])]);
370
- smalltalk.send(self, "_deny_", [smalltalk.send((0), "__eq", [false])]);
371
- smalltalk.send(self, "_deny_", [smalltalk.send(false, "__eq", [(0)])]);
372
- smalltalk.send(self, "_deny_", [smalltalk.send("", "__eq", [(0)])]);
373
- smalltalk.send(self, "_deny_", [smalltalk.send((0), "__eq", [""])]);
537
+ var body=nil;
538
+ (body=(function($rec){smalltalk.send($rec, "_addClass_", ["amber"]);return smalltalk.send($rec, "_yourself", []);})(smalltalk.send("body", "_asJQuery", [])));
539
+ smalltalk.send(self, "_assert_", [smalltalk.send(body, "_hasClass_", ["amber"])]);
540
+ smalltalk.send(body, "_removeClass_", ["amber"]);
541
+ smalltalk.send(self, "_deny_", [smalltalk.send(body, "_hasClass_", ["amber"])]);
374
542
  return self;}
375
543
  }),
376
- smalltalk.NumberTest);
544
+ smalltalk.JSObjectProxyTest);
545
+
377
546
 
547
+
548
+ smalltalk.addClass('NumberTest', smalltalk.TestCase, [], 'Kernel-Tests');
378
549
  smalltalk.addMethod(
379
- unescape('_testArithmetic'),
550
+ "_testArithmetic",
380
551
  smalltalk.method({
381
- selector: unescape('testArithmetic'),
382
- fn: function () {
552
+ selector: "testArithmetic",
553
+ fn: function (){
383
554
  var self=this;
384
555
  smalltalk.send(self, "_assert_", [smalltalk.send((1.5) + (1), "__eq", [(2.5)])]);
385
556
  smalltalk.send(self, "_assert_", [smalltalk.send((2) - (1), "__eq", [(1)])]);
@@ -393,35 +564,10 @@ return self;}
393
564
  smalltalk.NumberTest);
394
565
 
395
566
  smalltalk.addMethod(
396
- unescape('_testRounded'),
397
- smalltalk.method({
398
- selector: unescape('testRounded'),
399
- fn: function () {
400
- var self=this;
401
- smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send((3), "_rounded", []), "__eq", [(3)])]);
402
- smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send((3.212), "_rounded", []), "__eq", [(3)])]);
403
- smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send((3.51), "_rounded", []), "__eq", [(4)])]);
404
- return self;}
405
- }),
406
- smalltalk.NumberTest);
407
-
408
- smalltalk.addMethod(
409
- unescape('_testNegated'),
410
- smalltalk.method({
411
- selector: unescape('testNegated'),
412
- fn: function () {
413
- var self=this;
414
- smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send((3), "_negated", []), "__eq", [(-3)])]);
415
- smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send((-3), "_negated", []), "__eq", [(3)])]);
416
- return self;}
417
- }),
418
- smalltalk.NumberTest);
419
-
420
- smalltalk.addMethod(
421
- unescape('_testComparison'),
567
+ "_testComparison",
422
568
  smalltalk.method({
423
- selector: unescape('testComparison'),
424
- fn: function () {
569
+ selector: "testComparison",
570
+ fn: function (){
425
571
  var self=this;
426
572
  smalltalk.send(self, "_assert_", [(3) > (2)]);
427
573
  smalltalk.send(self, "_assert_", [(2) < (3)]);
@@ -436,23 +582,10 @@ return self;}
436
582
  smalltalk.NumberTest);
437
583
 
438
584
  smalltalk.addMethod(
439
- unescape('_testTruncated'),
440
- smalltalk.method({
441
- selector: unescape('testTruncated'),
442
- fn: function () {
443
- var self=this;
444
- smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send((3), "_truncated", []), "__eq", [(3)])]);
445
- smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send((3.212), "_truncated", []), "__eq", [(3)])]);
446
- smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send((3.51), "_truncated", []), "__eq", [(3)])]);
447
- return self;}
448
- }),
449
- smalltalk.NumberTest);
450
-
451
- smalltalk.addMethod(
452
- unescape('_testCopying'),
585
+ "_testCopying",
453
586
  smalltalk.method({
454
- selector: unescape('testCopying'),
455
- fn: function () {
587
+ selector: "testCopying",
588
+ fn: function (){
456
589
  var self=this;
457
590
  smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send((1), "_copy", []), "__eq_eq", [(1)])]);
458
591
  smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send((1), "_deepCopy", []), "__eq_eq", [(1)])]);
@@ -461,22 +594,30 @@ return self;}
461
594
  smalltalk.NumberTest);
462
595
 
463
596
  smalltalk.addMethod(
464
- unescape('_testMinMax'),
597
+ "_testEquality",
465
598
  smalltalk.method({
466
- selector: unescape('testMinMax'),
467
- fn: function () {
599
+ selector: "testEquality",
600
+ fn: function (){
468
601
  var self=this;
469
- smalltalk.send(self, "_assert_equals_", [smalltalk.send((2), "_max_", [(5)]), (5)]);
470
- smalltalk.send(self, "_assert_equals_", [smalltalk.send((2), "_min_", [(5)]), (2)]);
602
+ smalltalk.send(self, "_assert_", [smalltalk.send((1), "__eq", [(1)])]);
603
+ smalltalk.send(self, "_assert_", [smalltalk.send((0), "__eq", [(0)])]);
604
+ smalltalk.send(self, "_deny_", [smalltalk.send((1), "__eq", [(0)])]);
605
+ smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send((1), "_yourself", []), "__eq", [(1)])]);
606
+ smalltalk.send(self, "_assert_", [smalltalk.send((1), "__eq", [smalltalk.send((1), "_yourself", [])])]);
607
+ smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send((1), "_yourself", []), "__eq", [smalltalk.send((1), "_yourself", [])])]);
608
+ smalltalk.send(self, "_deny_", [smalltalk.send((0), "__eq", [false])]);
609
+ smalltalk.send(self, "_deny_", [smalltalk.send(false, "__eq", [(0)])]);
610
+ smalltalk.send(self, "_deny_", [smalltalk.send("", "__eq", [(0)])]);
611
+ smalltalk.send(self, "_deny_", [smalltalk.send((0), "__eq", [""])]);
471
612
  return self;}
472
613
  }),
473
614
  smalltalk.NumberTest);
474
615
 
475
616
  smalltalk.addMethod(
476
- unescape('_testIdentity'),
617
+ "_testIdentity",
477
618
  smalltalk.method({
478
- selector: unescape('testIdentity'),
479
- fn: function () {
619
+ selector: "testIdentity",
620
+ fn: function (){
480
621
  var self=this;
481
622
  smalltalk.send(self, "_assert_", [smalltalk.send((1), "__eq_eq", [(1)])]);
482
623
  smalltalk.send(self, "_assert_", [smalltalk.send((0), "__eq_eq", [(0)])]);
@@ -490,980 +631,938 @@ return self;}
490
631
  smalltalk.NumberTest);
491
632
 
492
633
  smalltalk.addMethod(
493
- unescape('_testSqrt'),
634
+ "_testMinMax",
494
635
  smalltalk.method({
495
- selector: unescape('testSqrt'),
496
- fn: function () {
636
+ selector: "testMinMax",
637
+ fn: function (){
497
638
  var self=this;
498
- smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send((4), "_sqrt", []), "__eq", [(2)])]);
499
- smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send((16), "_sqrt", []), "__eq", [(4)])]);
639
+ smalltalk.send(self, "_assert_equals_", [smalltalk.send((2), "_max_", [(5)]), (5)]);
640
+ smalltalk.send(self, "_assert_equals_", [smalltalk.send((2), "_min_", [(5)]), (2)]);
500
641
  return self;}
501
642
  }),
502
643
  smalltalk.NumberTest);
503
644
 
504
645
  smalltalk.addMethod(
505
- unescape('_testSquared'),
646
+ "_testNegated",
506
647
  smalltalk.method({
507
- selector: unescape('testSquared'),
508
- fn: function () {
648
+ selector: "testNegated",
649
+ fn: function (){
509
650
  var self=this;
510
- smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send((4), "_squared", []), "__eq", [(16)])]);
651
+ smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send((3), "_negated", []), "__eq", [(-3)])]);
652
+ smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send((-3), "_negated", []), "__eq", [(3)])]);
511
653
  return self;}
512
654
  }),
513
655
  smalltalk.NumberTest);
514
656
 
515
657
  smalltalk.addMethod(
516
- unescape('_testTimesRepeat'),
658
+ "_testPrintShowingDecimalPlaces",
517
659
  smalltalk.method({
518
- selector: unescape('testTimesRepeat'),
519
- fn: function () {
660
+ selector: "testPrintShowingDecimalPlaces",
661
+ fn: function (){
520
662
  var self=this;
521
- var i=nil;
522
- (i=(0));
523
- smalltalk.send((0), "_timesRepeat_", [(function(){return (i=((($receiver = i).klass === smalltalk.Number) ? $receiver +(1) : smalltalk.send($receiver, "__plus", [(1)])));})]);
524
- smalltalk.send(self, "_assert_equals_", [i, (0)]);
525
- smalltalk.send((5), "_timesRepeat_", [(function(){return (i=((($receiver = i).klass === smalltalk.Number) ? $receiver +(1) : smalltalk.send($receiver, "__plus", [(1)])));})]);
526
- smalltalk.send(self, "_assert_equals_", [i, (5)]);
663
+ smalltalk.send(self, "_assert_equals_", ["23.00", smalltalk.send((23), "_printShowingDecimalPlaces_", [(2)])]);
664
+ smalltalk.send(self, "_assert_equals_", ["23.57", smalltalk.send((23.5698), "_printShowingDecimalPlaces_", [(2)])]);
665
+ smalltalk.send(self, "_assert_equals_", ["-234.56700", smalltalk.send(smalltalk.send((234.567), "_negated", []), "_printShowingDecimalPlaces_", [(5)])]);
666
+ smalltalk.send(self, "_assert_equals_", ["23", smalltalk.send((23.4567), "_printShowingDecimalPlaces_", [(0)])]);
667
+ smalltalk.send(self, "_assert_equals_", ["24", smalltalk.send((23.5567), "_printShowingDecimalPlaces_", [(0)])]);
668
+ smalltalk.send(self, "_assert_equals_", ["-23", smalltalk.send(smalltalk.send((23.4567), "_negated", []), "_printShowingDecimalPlaces_", [(0)])]);
669
+ smalltalk.send(self, "_assert_equals_", ["-24", smalltalk.send(smalltalk.send((23.5567), "_negated", []), "_printShowingDecimalPlaces_", [(0)])]);
670
+ smalltalk.send(self, "_assert_equals_", ["100000000.0", smalltalk.send((100000000), "_printShowingDecimalPlaces_", [(1)])]);
671
+ smalltalk.send(self, "_assert_equals_", ["0.98000", smalltalk.send((0.98), "_printShowingDecimalPlaces_", [(5)])]);
672
+ smalltalk.send(self, "_assert_equals_", ["-0.98", smalltalk.send(smalltalk.send((0.98), "_negated", []), "_printShowingDecimalPlaces_", [(2)])]);
673
+ smalltalk.send(self, "_assert_equals_", ["2.57", smalltalk.send((2.567), "_printShowingDecimalPlaces_", [(2)])]);
674
+ smalltalk.send(self, "_assert_equals_", ["-2.57", smalltalk.send((-2.567), "_printShowingDecimalPlaces_", [(2)])]);
675
+ smalltalk.send(self, "_assert_equals_", ["0.00", smalltalk.send((0), "_printShowingDecimalPlaces_", [(2)])]);
527
676
  return self;}
528
677
  }),
529
678
  smalltalk.NumberTest);
530
679
 
531
680
  smalltalk.addMethod(
532
- unescape('_testTo'),
681
+ "_testRounded",
533
682
  smalltalk.method({
534
- selector: unescape('testTo'),
535
- fn: function () {
683
+ selector: "testRounded",
684
+ fn: function (){
536
685
  var self=this;
537
- smalltalk.send(self, "_assert_equals_", [smalltalk.send((1), "_to_", [(5)]), [(1), (2), (3), (4), (5)]]);
686
+ smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send((3), "_rounded", []), "__eq", [(3)])]);
687
+ smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send((3.212), "_rounded", []), "__eq", [(3)])]);
688
+ smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send((3.51), "_rounded", []), "__eq", [(4)])]);
538
689
  return self;}
539
690
  }),
540
691
  smalltalk.NumberTest);
541
692
 
542
693
  smalltalk.addMethod(
543
- unescape('_testToBy'),
694
+ "_testSqrt",
544
695
  smalltalk.method({
545
- selector: unescape('testToBy'),
546
- fn: function () {
696
+ selector: "testSqrt",
697
+ fn: function (){
547
698
  var self=this;
548
- smalltalk.send(self, "_assert_equals_", [smalltalk.send((0), "_to_by_", [(6), (2)]), [(0), (2), (4), (6)]]);
549
- smalltalk.send(self, "_should_raise_", [(function(){return smalltalk.send((1), "_to_by_", [(4), (0)]);}), (smalltalk.Error || Error)]);
699
+ smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send((4), "_sqrt", []), "__eq", [(2)])]);
700
+ smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send((16), "_sqrt", []), "__eq", [(4)])]);
550
701
  return self;}
551
702
  }),
552
703
  smalltalk.NumberTest);
553
704
 
554
-
555
-
556
- smalltalk.addClass('JSObjectProxyTest', smalltalk.TestCase, [], 'Kernel-Tests');
557
705
  smalltalk.addMethod(
558
- unescape('_jsObject'),
706
+ "_testSquared",
559
707
  smalltalk.method({
560
- selector: unescape('jsObject'),
561
- fn: function () {
708
+ selector: "testSquared",
709
+ fn: function (){
562
710
  var self=this;
563
- return jsObject = {a: 1, b: function() {return 2;}, c: function(object) {return object;}};
711
+ smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send((4), "_squared", []), "__eq", [(16)])]);
564
712
  return self;}
565
713
  }),
566
- smalltalk.JSObjectProxyTest);
714
+ smalltalk.NumberTest);
567
715
 
568
716
  smalltalk.addMethod(
569
- unescape('_testMethodWithArguments'),
717
+ "_testTimesRepeat",
570
718
  smalltalk.method({
571
- selector: unescape('testMethodWithArguments'),
572
- fn: function () {
719
+ selector: "testTimesRepeat",
720
+ fn: function (){
573
721
  var self=this;
574
- smalltalk.send(self, "_deny_", [smalltalk.send(smalltalk.send("body", "_asJQuery", []), "_hasClass_", ["amber"])]);
575
- smalltalk.send(smalltalk.send("body", "_asJQuery", []), "_addClass_", ["amber"]);
576
- smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send("body", "_asJQuery", []), "_hasClass_", ["amber"])]);
577
- smalltalk.send(smalltalk.send("body", "_asJQuery", []), "_removeClass_", ["amber"]);
578
- smalltalk.send(self, "_deny_", [smalltalk.send(smalltalk.send("body", "_asJQuery", []), "_hasClass_", ["amber"])]);
722
+ var i=nil;
723
+ (i=(0));
724
+ smalltalk.send((0), "_timesRepeat_", [(function(){return (i=((($receiver = i).klass === smalltalk.Number) ? $receiver +(1) : smalltalk.send($receiver, "__plus", [(1)])));})]);
725
+ smalltalk.send(self, "_assert_equals_", [i, (0)]);
726
+ smalltalk.send((5), "_timesRepeat_", [(function(){return (i=((($receiver = i).klass === smalltalk.Number) ? $receiver +(1) : smalltalk.send($receiver, "__plus", [(1)])));})]);
727
+ smalltalk.send(self, "_assert_equals_", [i, (5)]);
579
728
  return self;}
580
729
  }),
581
- smalltalk.JSObjectProxyTest);
730
+ smalltalk.NumberTest);
582
731
 
583
732
  smalltalk.addMethod(
584
- unescape('_testYourself'),
733
+ "_testTo",
585
734
  smalltalk.method({
586
- selector: unescape('testYourself'),
587
- fn: function () {
735
+ selector: "testTo",
736
+ fn: function (){
588
737
  var self=this;
589
- var body=nil;
590
- (body=(function($rec){smalltalk.send($rec, "_addClass_", ["amber"]);return smalltalk.send($rec, "_yourself", []);})(smalltalk.send("body", "_asJQuery", [])));
591
- smalltalk.send(self, "_assert_", [smalltalk.send(body, "_hasClass_", ["amber"])]);
592
- smalltalk.send(body, "_removeClass_", ["amber"]);
593
- smalltalk.send(self, "_deny_", [smalltalk.send(body, "_hasClass_", ["amber"])]);
738
+ smalltalk.send(self, "_assert_equals_", [smalltalk.send((1), "_to_", [(5)]), [(1), (2), (3), (4), (5)]]);
594
739
  return self;}
595
740
  }),
596
- smalltalk.JSObjectProxyTest);
741
+ smalltalk.NumberTest);
597
742
 
598
743
  smalltalk.addMethod(
599
- unescape('_testPropertyThatReturnsEmptyString'),
744
+ "_testToBy",
600
745
  smalltalk.method({
601
- selector: unescape('testPropertyThatReturnsEmptyString'),
602
- fn: function () {
746
+ selector: "testToBy",
747
+ fn: function (){
603
748
  var self=this;
604
- document.location.hash = '';
605
- smalltalk.send(self, "_assert_equals_", ["", smalltalk.send(smalltalk.send((typeof document == 'undefined' ? nil : document), "_location", []), "_hash", [])]);
606
- smalltalk.send(smalltalk.send((typeof document == 'undefined' ? nil : document), "_location", []), "_hash_", ["test"]);
607
- smalltalk.send(self, "_assert_equals_", [unescape("%23test"), smalltalk.send(smalltalk.send((typeof document == 'undefined' ? nil : document), "_location", []), "_hash", [])]);
749
+ smalltalk.send(self, "_assert_equals_", [smalltalk.send((0), "_to_by_", [(6), (2)]), [(0), (2), (4), (6)]]);
750
+ smalltalk.send(self, "_should_raise_", [(function(){return smalltalk.send((1), "_to_by_", [(4), (0)]);}), (smalltalk.Error || Error)]);
608
751
  return self;}
609
752
  }),
610
- smalltalk.JSObjectProxyTest);
753
+ smalltalk.NumberTest);
611
754
 
612
755
  smalltalk.addMethod(
613
- unescape('_testDNU'),
756
+ "_testTruncated",
614
757
  smalltalk.method({
615
- selector: unescape('testDNU'),
616
- fn: function () {
758
+ selector: "testTruncated",
759
+ fn: function (){
617
760
  var self=this;
618
- smalltalk.send(self, "_should_raise_", [(function(){return smalltalk.send(smalltalk.send(self, "_jsObject", []), "_foo", []);}), (smalltalk.MessageNotUnderstood || MessageNotUnderstood)]);
761
+ smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send((3), "_truncated", []), "__eq", [(3)])]);
762
+ smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send((3.212), "_truncated", []), "__eq", [(3)])]);
763
+ smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send((3.51), "_truncated", []), "__eq", [(3)])]);
619
764
  return self;}
620
765
  }),
621
- smalltalk.JSObjectProxyTest);
766
+ smalltalk.NumberTest);
767
+
768
+
622
769
 
770
+ smalltalk.addClass('ObjectMock', smalltalk.Object, ['foo', 'bar'], 'Kernel-Tests');
623
771
  smalltalk.addMethod(
624
- unescape('_testMessageSend'),
772
+ "_foo",
625
773
  smalltalk.method({
626
- selector: unescape('testMessageSend'),
627
- fn: function () {
774
+ selector: "foo",
775
+ fn: function (){
628
776
  var self=this;
629
- smalltalk.send(self, "_assert_equals_", [smalltalk.send(smalltalk.send(self, "_jsObject", []), "_a", []), (1)]);
630
- smalltalk.send(self, "_assert_equals_", [smalltalk.send(smalltalk.send(self, "_jsObject", []), "_b", []), (2)]);
631
- smalltalk.send(self, "_assert_equals_", [smalltalk.send(smalltalk.send(self, "_jsObject", []), "_c_", [(3)]), (3)]);
777
+ return self['@foo'];
632
778
  return self;}
633
779
  }),
634
- smalltalk.JSObjectProxyTest);
780
+ smalltalk.ObjectMock);
635
781
 
636
782
  smalltalk.addMethod(
637
- unescape('_testPrinting'),
783
+ "_foo_",
638
784
  smalltalk.method({
639
- selector: unescape('testPrinting'),
640
- fn: function () {
785
+ selector: "foo:",
786
+ fn: function (anObject){
641
787
  var self=this;
642
- smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send(smalltalk.send(self, "_jsObject", []), "_printString", []), "__eq", [unescape("%5Bobject%20Object%5D")])]);
788
+ (self['@foo']=anObject);
643
789
  return self;}
644
790
  }),
645
- smalltalk.JSObjectProxyTest);
791
+ smalltalk.ObjectMock);
646
792
 
647
793
 
648
794
 
649
- smalltalk.addClass('PackageTest', smalltalk.TestCase, ['zorkPackage', 'grulPackage', 'backUpCommitPathJs', 'backUpCommitPathSt'], 'Kernel-Tests');
795
+ smalltalk.addClass('ObjectTest', smalltalk.TestCase, [], 'Kernel-Tests');
650
796
  smalltalk.addMethod(
651
- unescape('_setUp'),
797
+ "_testBasicAccess",
652
798
  smalltalk.method({
653
- selector: unescape('setUp'),
654
- fn: function () {
799
+ selector: "testBasicAccess",
800
+ fn: function (){
655
801
  var self=this;
656
- (self['@backUpCommitPathJs']=smalltalk.send((smalltalk.Package || Package), "_defaultCommitPathJs", []));
657
- (self['@backUpCommitPathSt']=smalltalk.send((smalltalk.Package || Package), "_defaultCommitPathSt", []));
658
- smalltalk.send((smalltalk.Package || Package), "_resetCommitPaths", []);
659
- (self['@zorkPackage']=smalltalk.send(smalltalk.send((smalltalk.Package || Package), "_new", []), "_name_", ["Zork"]));
660
- (self['@grulPackage']=(function($rec){smalltalk.send($rec, "_name_", ["Grul"]);smalltalk.send($rec, "_commitPathJs_", [unescape("server/grul/js")]);smalltalk.send($rec, "_commitPathSt_", [unescape("grul/st")]);return smalltalk.send($rec, "_yourself", []);})(smalltalk.send((smalltalk.Package || Package), "_new", [])));
802
+ var o=nil;
803
+ (o=smalltalk.send((smalltalk.Object || Object), "_new", []));
804
+ smalltalk.send(o, "_basicAt_put_", ["a", (1)]);
805
+ smalltalk.send(self, "_assert_equals_", [smalltalk.send(o, "_basicAt_", ["a"]), (1)]);
806
+ smalltalk.send(self, "_assert_equals_", [smalltalk.send(o, "_basicAt_", ["b"]), nil]);
661
807
  return self;}
662
808
  }),
663
- smalltalk.PackageTest);
809
+ smalltalk.ObjectTest);
664
810
 
665
811
  smalltalk.addMethod(
666
- unescape('_tearDown'),
812
+ "_testBasicPerform",
667
813
  smalltalk.method({
668
- selector: unescape('tearDown'),
669
- fn: function () {
814
+ selector: "testBasicPerform",
815
+ fn: function (){
670
816
  var self=this;
671
- (function($rec){smalltalk.send($rec, "_defaultCommitPathJs_", [self['@backUpCommitPathJs']]);return smalltalk.send($rec, "_defaultCommitPathSt_", [self['@backUpCommitPathSt']]);})((smalltalk.Package || Package));
817
+ var o=nil;
818
+ (o=smalltalk.send((smalltalk.Object || Object), "_new", []));
819
+ smalltalk.send(o, "_basicAt_put_", ["func", (function(){return "hello";})]);
820
+ smalltalk.send(o, "_basicAt_put_", ["func2", (function(a){return ((($receiver = a).klass === smalltalk.Number) ? $receiver +(1) : smalltalk.send($receiver, "__plus", [(1)]));})]);
821
+ smalltalk.send(self, "_assert_equals_", [smalltalk.send(o, "_basicPerform_", ["func"]), "hello"]);
822
+ smalltalk.send(self, "_assert_equals_", [smalltalk.send(o, "_basicPerform_withArguments_", ["func2", [(3)]]), (4)]);
672
823
  return self;}
673
824
  }),
674
- smalltalk.PackageTest);
825
+ smalltalk.ObjectTest);
675
826
 
676
827
  smalltalk.addMethod(
677
- unescape('_testGrulCommitPathStShouldBeGrulSt'),
828
+ "_testDNU",
678
829
  smalltalk.method({
679
- selector: unescape('testGrulCommitPathStShouldBeGrulSt'),
680
- fn: function () {
830
+ selector: "testDNU",
831
+ fn: function (){
681
832
  var self=this;
682
- smalltalk.send(self, "_assert_equals_", [unescape("grul/st"), smalltalk.send(self['@grulPackage'], "_commitPathSt", [])]);
833
+ smalltalk.send(self, "_should_raise_", [(function(){return smalltalk.send(smalltalk.send((smalltalk.Object || Object), "_new", []), "_foo", []);}), (smalltalk.MessageNotUnderstood || MessageNotUnderstood)]);
683
834
  return self;}
684
835
  }),
685
- smalltalk.PackageTest);
836
+ smalltalk.ObjectTest);
686
837
 
687
838
  smalltalk.addMethod(
688
- unescape('_testZorkCommitPathStShouldBeSt'),
839
+ "_testEquality",
689
840
  smalltalk.method({
690
- selector: unescape('testZorkCommitPathStShouldBeSt'),
691
- fn: function () {
841
+ selector: "testEquality",
842
+ fn: function (){
692
843
  var self=this;
693
- smalltalk.send(self, "_assert_equals_", ["st", smalltalk.send(self['@zorkPackage'], "_commitPathSt", [])]);
844
+ var o=nil;
845
+ (o=smalltalk.send((smalltalk.Object || Object), "_new", []));
846
+ smalltalk.send(self, "_deny_", [smalltalk.send(o, "__eq", [smalltalk.send((smalltalk.Object || Object), "_new", [])])]);
847
+ smalltalk.send(self, "_assert_", [smalltalk.send(o, "__eq", [o])]);
848
+ smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send(o, "_yourself", []), "__eq", [o])]);
849
+ smalltalk.send(self, "_assert_", [smalltalk.send(o, "__eq", [smalltalk.send(o, "_yourself", [])])]);
694
850
  return self;}
695
851
  }),
696
- smalltalk.PackageTest);
852
+ smalltalk.ObjectTest);
697
853
 
698
854
  smalltalk.addMethod(
699
- unescape('_testZorkCommitPathJsShouldBeJs'),
855
+ "_testHalt",
700
856
  smalltalk.method({
701
- selector: unescape('testZorkCommitPathJsShouldBeJs'),
702
- fn: function () {
857
+ selector: "testHalt",
858
+ fn: function (){
703
859
  var self=this;
704
- smalltalk.send(self, "_assert_equals_", ["js", smalltalk.send(self['@zorkPackage'], "_commitPathJs", [])]);
860
+ smalltalk.send(self, "_should_raise_", [(function(){return smalltalk.send(smalltalk.send((smalltalk.Object || Object), "_new", []), "_halt", []);}), (smalltalk.Error || Error)]);
705
861
  return self;}
706
862
  }),
707
- smalltalk.PackageTest);
863
+ smalltalk.ObjectTest);
708
864
 
709
865
  smalltalk.addMethod(
710
- unescape('_testGrulCommitPathJsShouldBeServerGrulJs'),
866
+ "_testIdentity",
711
867
  smalltalk.method({
712
- selector: unescape('testGrulCommitPathJsShouldBeServerGrulJs'),
713
- fn: function () {
868
+ selector: "testIdentity",
869
+ fn: function (){
714
870
  var self=this;
715
- smalltalk.send(self, "_assert_equals_", [unescape("server/grul/js"), smalltalk.send(self['@grulPackage'], "_commitPathJs", [])]);
871
+ var o=nil;
872
+ (o=smalltalk.send((smalltalk.Object || Object), "_new", []));
873
+ smalltalk.send(self, "_deny_", [smalltalk.send(o, "__eq_eq", [smalltalk.send((smalltalk.Object || Object), "_new", [])])]);
874
+ smalltalk.send(self, "_assert_", [smalltalk.send(o, "__eq_eq", [o])]);
875
+ smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send(o, "_yourself", []), "__eq_eq", [o])]);
876
+ smalltalk.send(self, "_assert_", [smalltalk.send(o, "__eq_eq", [smalltalk.send(o, "_yourself", [])])]);
716
877
  return self;}
717
878
  }),
718
- smalltalk.PackageTest);
719
-
720
-
879
+ smalltalk.ObjectTest);
721
880
 
722
- smalltalk.addClass('BlockClosureTest', smalltalk.TestCase, [], 'Kernel-Tests');
723
881
  smalltalk.addMethod(
724
- unescape('_testValue'),
882
+ "_testIfNil",
725
883
  smalltalk.method({
726
- selector: unescape('testValue'),
727
- fn: function () {
884
+ selector: "testIfNil",
885
+ fn: function (){
728
886
  var self=this;
729
- smalltalk.send(self, "_assert_equals_", [smalltalk.send((function(){return (1) + (1);}), "_value", []), (2)]);
730
- smalltalk.send(self, "_assert_equals_", [smalltalk.send((function(x){return ((($receiver = x).klass === smalltalk.Number) ? $receiver +(1) : smalltalk.send($receiver, "__plus", [(1)]));}), "_value_", [(2)]), (3)]);
731
- smalltalk.send(self, "_assert_equals_", [smalltalk.send((function(x, y){return ((($receiver = x).klass === smalltalk.Number) ? $receiver *y : smalltalk.send($receiver, "__star", [y]));}), "_value_value_", [(2), (4)]), (8)]);
732
- smalltalk.send(self, "_assert_equals_", [smalltalk.send((function(a, b, c){return (1);}), "_value", []), (1)]);
887
+ smalltalk.send(self, "_deny_", [smalltalk.send(smalltalk.send((smalltalk.Object || Object), "_new", []), "_isNil", [])]);
888
+ smalltalk.send(self, "_deny_", [smalltalk.send((($receiver = smalltalk.send((smalltalk.Object || Object), "_new", [])) == nil || $receiver == undefined) ? (function(){return true;})() : $receiver, "__eq", [true])]);
889
+ smalltalk.send(self, "_assert_", [smalltalk.send((($receiver = smalltalk.send((smalltalk.Object || Object), "_new", [])) != nil && $receiver != undefined) ? (function(){return true;})() : nil, "__eq", [true])]);
890
+ smalltalk.send(self, "_assert_", [smalltalk.send((($receiver = smalltalk.send((smalltalk.Object || Object), "_new", [])) == nil || $receiver == undefined) ? (function(){return false;})() : (function(){return true;})(), "__eq", [true])]);
891
+ smalltalk.send(self, "_assert_", [smalltalk.send((($receiver = smalltalk.send((smalltalk.Object || Object), "_new", [])) == nil || $receiver == undefined) ? (function(){return false;})() : (function(){return true;})(), "__eq", [true])]);
733
892
  return self;}
734
893
  }),
735
- smalltalk.BlockClosureTest);
894
+ smalltalk.ObjectTest);
736
895
 
737
896
  smalltalk.addMethod(
738
- unescape('_testOnDo'),
897
+ "_testInstVars",
739
898
  smalltalk.method({
740
- selector: unescape('testOnDo'),
741
- fn: function () {
899
+ selector: "testInstVars",
900
+ fn: function (){
742
901
  var self=this;
743
- smalltalk.send(self, "_assert_", [smalltalk.send((function(){return smalltalk.send(smalltalk.send((smalltalk.Error || Error), "_new", []), "_signal", []);}), "_on_do_", [(smalltalk.Error || Error), (function(ex){return true;})])]);
902
+ var o=nil;
903
+ (o=smalltalk.send((smalltalk.ObjectMock || ObjectMock), "_new", []));
904
+ smalltalk.send(self, "_assert_equals_", [smalltalk.send(o, "_instVarAt_", [smalltalk.symbolFor("foo")]), nil]);
905
+ smalltalk.send(o, "_instVarAt_put_", [smalltalk.symbolFor("foo"), (1)]);
906
+ smalltalk.send(self, "_assert_equals_", [smalltalk.send(o, "_instVarAt_", [smalltalk.symbolFor("foo")]), (1)]);
907
+ smalltalk.send(self, "_assert_equals_", [smalltalk.send(o, "_instVarAt_", ["foo"]), (1)]);
744
908
  return self;}
745
909
  }),
746
- smalltalk.BlockClosureTest);
910
+ smalltalk.ObjectTest);
747
911
 
748
912
  smalltalk.addMethod(
749
- unescape('_testEnsure'),
913
+ "_testNilUndefined",
750
914
  smalltalk.method({
751
- selector: unescape('testEnsure'),
752
- fn: function () {
915
+ selector: "testNilUndefined",
916
+ fn: function (){
753
917
  var self=this;
754
- smalltalk.send(self, "_assert_", [smalltalk.send((function(){return smalltalk.send((smalltalk.Error || Error), "_new", []);}), "_ensure_", [(function(){return true;})])]);
918
+ smalltalk.send(self, "_assert_", [smalltalk.send(nil, "__eq", [(typeof undefined == 'undefined' ? nil : undefined)])]);
755
919
  return self;}
756
920
  }),
757
- smalltalk.BlockClosureTest);
921
+ smalltalk.ObjectTest);
758
922
 
759
923
  smalltalk.addMethod(
760
- unescape('_testNumArgs'),
924
+ "_testYourself",
761
925
  smalltalk.method({
762
- selector: unescape('testNumArgs'),
763
- fn: function () {
926
+ selector: "testYourself",
927
+ fn: function (){
764
928
  var self=this;
765
- smalltalk.send(self, "_assert_equals_", [smalltalk.send((function(){return nil;}), "_numArgs", []), (0)]);
766
- smalltalk.send(self, "_assert_equals_", [smalltalk.send((function(a, b){return nil;}), "_numArgs", []), (2)]);
929
+ var o=nil;
930
+ (o=smalltalk.send((smalltalk.ObjectMock || ObjectMock), "_new", []));
931
+ smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send(o, "_yourself", []), "__eq_eq", [o])]);
767
932
  return self;}
768
933
  }),
769
- smalltalk.BlockClosureTest);
934
+ smalltalk.ObjectTest);
770
935
 
771
936
  smalltalk.addMethod(
772
- unescape('_testValueWithPossibleArguments'),
937
+ "_testidentityHash",
773
938
  smalltalk.method({
774
- selector: unescape('testValueWithPossibleArguments'),
775
- fn: function () {
939
+ selector: "testidentityHash",
940
+ fn: function (){
776
941
  var self=this;
777
- smalltalk.send(self, "_assert_equals_", [smalltalk.send((function(){return (1);}), "_valueWithPossibleArguments_", [[(3), (4)]]), (1)]);
778
- smalltalk.send(self, "_assert_equals_", [smalltalk.send((function(a){return ((($receiver = a).klass === smalltalk.Number) ? $receiver +(4) : smalltalk.send($receiver, "__plus", [(4)]));}), "_valueWithPossibleArguments_", [[(3), (4)]]), (7)]);
779
- smalltalk.send(self, "_assert_equals_", [smalltalk.send((function(a, b){return ((($receiver = a).klass === smalltalk.Number) ? $receiver +b : smalltalk.send($receiver, "__plus", [b]));}), "_valueWithPossibleArguments_", [[(3), (4), (5)]]), (7)]);
942
+ var o1=nil;
943
+ var o2=nil;
944
+ (o1=smalltalk.send((smalltalk.Object || Object), "_new", []));
945
+ (o2=smalltalk.send((smalltalk.Object || Object), "_new", []));
946
+ smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send(o1, "_identityHash", []), "__eq_eq", [smalltalk.send(o1, "_identityHash", [])])]);
947
+ smalltalk.send(self, "_deny_", [smalltalk.send(smalltalk.send(o1, "_identityHash", []), "__eq_eq", [smalltalk.send(o2, "_identityHash", [])])]);
780
948
  return self;}
781
949
  }),
782
- smalltalk.BlockClosureTest);
950
+ smalltalk.ObjectTest);
783
951
 
784
- smalltalk.addMethod(
785
- unescape('_testWhileTrue'),
786
- smalltalk.method({
787
- selector: unescape('testWhileTrue'),
788
- fn: function () {
789
- var self=this;
790
- var i=nil;
791
- (i=(0));
792
- (function(){while((function(){return ((($receiver = i).klass === smalltalk.Number) ? $receiver <(5) : smalltalk.send($receiver, "__lt", [(5)]));})()) {(function(){return (i=((($receiver = i).klass === smalltalk.Number) ? $receiver +(1) : smalltalk.send($receiver, "__plus", [(1)])));})()}})();
793
- smalltalk.send(self, "_assert_equals_", [i, (5)]);
794
- (i=(0));
795
- (function(){while((function(){(i=((($receiver = i).klass === smalltalk.Number) ? $receiver +(1) : smalltalk.send($receiver, "__plus", [(1)])));return ((($receiver = i).klass === smalltalk.Number) ? $receiver <(5) : smalltalk.send($receiver, "__lt", [(5)]));})()) {}})();
796
- smalltalk.send(self, "_assert_equals_", [i, (5)]);
797
- return self;}
798
- }),
799
- smalltalk.BlockClosureTest);
800
952
 
801
- smalltalk.addMethod(
802
- unescape('_testWhileFalse'),
803
- smalltalk.method({
804
- selector: unescape('testWhileFalse'),
805
- fn: function () {
806
- var self=this;
807
- var i=nil;
808
- (i=(0));
809
- (function(){while(!(function(){return ((($receiver = i).klass === smalltalk.Number) ? $receiver >(5) : smalltalk.send($receiver, "__gt", [(5)]));})()) {(function(){return (i=((($receiver = i).klass === smalltalk.Number) ? $receiver +(1) : smalltalk.send($receiver, "__plus", [(1)])));})()}})();
810
- smalltalk.send(self, "_assert_equals_", [i, (6)]);
811
- (i=(0));
812
- (function(){while(!(function(){(i=((($receiver = i).klass === smalltalk.Number) ? $receiver +(1) : smalltalk.send($receiver, "__plus", [(1)])));return ((($receiver = i).klass === smalltalk.Number) ? $receiver >(5) : smalltalk.send($receiver, "__gt", [(5)]));})()) {}})();
813
- smalltalk.send(self, "_assert_equals_", [i, (6)]);
814
- return self;}
815
- }),
816
- smalltalk.BlockClosureTest);
817
953
 
954
+ smalltalk.addClass('PackageTest', smalltalk.TestCase, ['zorkPackage', 'grulPackage', 'backUpCommitPathJs', 'backUpCommitPathSt'], 'Kernel-Tests');
818
955
  smalltalk.addMethod(
819
- unescape('_testCompiledSource'),
956
+ "_setUp",
820
957
  smalltalk.method({
821
- selector: unescape('testCompiledSource'),
822
- fn: function () {
958
+ selector: "setUp",
959
+ fn: function (){
823
960
  var self=this;
824
- smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send((function(){return (1) + (1);}), "_compiledSource", []), "_includesSubString_", ["function"])]);
961
+ (self['@backUpCommitPathJs']=smalltalk.send((smalltalk.Package || Package), "_defaultCommitPathJs", []));
962
+ (self['@backUpCommitPathSt']=smalltalk.send((smalltalk.Package || Package), "_defaultCommitPathSt", []));
963
+ smalltalk.send((smalltalk.Package || Package), "_resetCommitPaths", []);
964
+ (self['@zorkPackage']=smalltalk.send(smalltalk.send((smalltalk.Package || Package), "_new", []), "_name_", ["Zork"]));
965
+ (self['@grulPackage']=(function($rec){smalltalk.send($rec, "_name_", ["Grul"]);smalltalk.send($rec, "_commitPathJs_", ["server/grul/js"]);smalltalk.send($rec, "_commitPathSt_", ["grul/st"]);return smalltalk.send($rec, "_yourself", []);})(smalltalk.send((smalltalk.Package || Package), "_new", [])));
825
966
  return self;}
826
967
  }),
827
- smalltalk.BlockClosureTest);
828
-
829
-
968
+ smalltalk.PackageTest);
830
969
 
831
- smalltalk.addClass('ObjectTest', smalltalk.TestCase, [], 'Kernel-Tests');
832
970
  smalltalk.addMethod(
833
- unescape('_testEquality'),
971
+ "_tearDown",
834
972
  smalltalk.method({
835
- selector: unescape('testEquality'),
836
- fn: function () {
973
+ selector: "tearDown",
974
+ fn: function (){
837
975
  var self=this;
838
- var o=nil;
839
- (o=smalltalk.send((smalltalk.Object || Object), "_new", []));
840
- smalltalk.send(self, "_deny_", [smalltalk.send(o, "__eq", [smalltalk.send((smalltalk.Object || Object), "_new", [])])]);
841
- smalltalk.send(self, "_assert_", [smalltalk.send(o, "__eq", [o])]);
842
- smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send(o, "_yourself", []), "__eq", [o])]);
843
- smalltalk.send(self, "_assert_", [smalltalk.send(o, "__eq", [smalltalk.send(o, "_yourself", [])])]);
976
+ (function($rec){smalltalk.send($rec, "_defaultCommitPathJs_", [self['@backUpCommitPathJs']]);return smalltalk.send($rec, "_defaultCommitPathSt_", [self['@backUpCommitPathSt']]);})((smalltalk.Package || Package));
844
977
  return self;}
845
978
  }),
846
- smalltalk.ObjectTest);
979
+ smalltalk.PackageTest);
847
980
 
848
981
  smalltalk.addMethod(
849
- unescape('_testIdentity'),
982
+ "_testGrulCommitPathJsShouldBeServerGrulJs",
850
983
  smalltalk.method({
851
- selector: unescape('testIdentity'),
852
- fn: function () {
984
+ selector: "testGrulCommitPathJsShouldBeServerGrulJs",
985
+ fn: function (){
853
986
  var self=this;
854
- var o=nil;
855
- (o=smalltalk.send((smalltalk.Object || Object), "_new", []));
856
- smalltalk.send(self, "_deny_", [smalltalk.send(o, "__eq_eq", [smalltalk.send((smalltalk.Object || Object), "_new", [])])]);
857
- smalltalk.send(self, "_assert_", [smalltalk.send(o, "__eq_eq", [o])]);
987
+ smalltalk.send(self, "_assert_equals_", ["server/grul/js", smalltalk.send(self['@grulPackage'], "_commitPathJs", [])]);
858
988
  return self;}
859
989
  }),
860
- smalltalk.ObjectTest);
990
+ smalltalk.PackageTest);
861
991
 
862
992
  smalltalk.addMethod(
863
- unescape('_testHalt'),
993
+ "_testGrulCommitPathStShouldBeGrulSt",
864
994
  smalltalk.method({
865
- selector: unescape('testHalt'),
866
- fn: function () {
995
+ selector: "testGrulCommitPathStShouldBeGrulSt",
996
+ fn: function (){
867
997
  var self=this;
868
- smalltalk.send(self, "_should_raise_", [(function(){return smalltalk.send(smalltalk.send((smalltalk.Object || Object), "_new", []), "_halt", []);}), (smalltalk.Error || Error)]);
998
+ smalltalk.send(self, "_assert_equals_", ["grul/st", smalltalk.send(self['@grulPackage'], "_commitPathSt", [])]);
869
999
  return self;}
870
1000
  }),
871
- smalltalk.ObjectTest);
1001
+ smalltalk.PackageTest);
872
1002
 
873
1003
  smalltalk.addMethod(
874
- unescape('_testBasicAccess'),
1004
+ "_testZorkCommitPathJsShouldBeJs",
875
1005
  smalltalk.method({
876
- selector: unescape('testBasicAccess'),
877
- fn: function () {
1006
+ selector: "testZorkCommitPathJsShouldBeJs",
1007
+ fn: function (){
878
1008
  var self=this;
879
- var o=nil;
880
- (o=smalltalk.send((smalltalk.Object || Object), "_new", []));
881
- smalltalk.send(o, "_basicAt_put_", ["a", (1)]);
882
- smalltalk.send(self, "_assert_equals_", [smalltalk.send(o, "_basicAt_", ["a"]), (1)]);
883
- smalltalk.send(self, "_assert_equals_", [smalltalk.send(o, "_basicAt_", ["b"]), nil]);
1009
+ smalltalk.send(self, "_assert_equals_", ["js", smalltalk.send(self['@zorkPackage'], "_commitPathJs", [])]);
884
1010
  return self;}
885
1011
  }),
886
- smalltalk.ObjectTest);
1012
+ smalltalk.PackageTest);
887
1013
 
888
1014
  smalltalk.addMethod(
889
- unescape('_testNilUndefined'),
1015
+ "_testZorkCommitPathStShouldBeSt",
890
1016
  smalltalk.method({
891
- selector: unescape('testNilUndefined'),
892
- fn: function () {
1017
+ selector: "testZorkCommitPathStShouldBeSt",
1018
+ fn: function (){
893
1019
  var self=this;
894
- smalltalk.send(self, "_assert_", [smalltalk.send(nil, "__eq", [(typeof undefined == 'undefined' ? nil : undefined)])]);
1020
+ smalltalk.send(self, "_assert_equals_", ["st", smalltalk.send(self['@zorkPackage'], "_commitPathSt", [])]);
895
1021
  return self;}
896
1022
  }),
897
- smalltalk.ObjectTest);
1023
+ smalltalk.PackageTest);
1024
+
898
1025
 
1026
+
1027
+ smalltalk.addClass('PackageWithDefaultCommitPathChangedTest', smalltalk.PackageTest, [], 'Kernel-Tests');
899
1028
  smalltalk.addMethod(
900
- unescape('_testidentityHash'),
1029
+ "_setUp",
901
1030
  smalltalk.method({
902
- selector: unescape('testidentityHash'),
903
- fn: function () {
1031
+ selector: "setUp",
1032
+ fn: function (){
904
1033
  var self=this;
905
- var o1=nil;
906
- var o2=nil;
907
- (o1=smalltalk.send((smalltalk.Object || Object), "_new", []));
908
- (o2=smalltalk.send((smalltalk.Object || Object), "_new", []));
909
- smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send(o1, "_identityHash", []), "__eq_eq", [smalltalk.send(o1, "_identityHash", [])])]);
910
- smalltalk.send(self, "_deny_", [smalltalk.send(smalltalk.send(o1, "_identityHash", []), "__eq_eq", [smalltalk.send(o2, "_identityHash", [])])]);
1034
+ smalltalk.send(self, "_setUp", [], smalltalk.PackageWithDefaultCommitPathChangedTest.superclass || nil);
1035
+ (function($rec){smalltalk.send($rec, "_defaultCommitPathJs_", ["javascripts/"]);return smalltalk.send($rec, "_defaultCommitPathSt_", ["smalltalk/"]);})((smalltalk.Package || Package));
911
1036
  return self;}
912
1037
  }),
913
- smalltalk.ObjectTest);
1038
+ smalltalk.PackageWithDefaultCommitPathChangedTest);
914
1039
 
915
1040
  smalltalk.addMethod(
916
- unescape('_testBasicPerform'),
1041
+ "_testGrulCommitPathJsShouldBeServerGrulJs",
917
1042
  smalltalk.method({
918
- selector: unescape('testBasicPerform'),
919
- fn: function () {
1043
+ selector: "testGrulCommitPathJsShouldBeServerGrulJs",
1044
+ fn: function (){
920
1045
  var self=this;
921
- var o=nil;
922
- (o=smalltalk.send((smalltalk.Object || Object), "_new", []));
923
- smalltalk.send(o, "_basicAt_put_", ["func", (function(){return "hello";})]);
924
- smalltalk.send(o, "_basicAt_put_", ["func2", (function(a){return ((($receiver = a).klass === smalltalk.Number) ? $receiver +(1) : smalltalk.send($receiver, "__plus", [(1)]));})]);
925
- smalltalk.send(self, "_assert_equals_", [smalltalk.send(o, "_basicPerform_", ["func"]), "hello"]);
926
- smalltalk.send(self, "_assert_equals_", [smalltalk.send(o, "_basicPerform_withArguments_", ["func2", [(3)]]), (4)]);
1046
+ smalltalk.send(self, "_assert_equals_", ["server/grul/js", smalltalk.send(self['@grulPackage'], "_commitPathJs", [])]);
927
1047
  return self;}
928
1048
  }),
929
- smalltalk.ObjectTest);
1049
+ smalltalk.PackageWithDefaultCommitPathChangedTest);
930
1050
 
931
1051
  smalltalk.addMethod(
932
- unescape('_testIfNil'),
1052
+ "_testGrulCommitPathStShouldBeGrulSt",
933
1053
  smalltalk.method({
934
- selector: unescape('testIfNil'),
935
- fn: function () {
1054
+ selector: "testGrulCommitPathStShouldBeGrulSt",
1055
+ fn: function (){
936
1056
  var self=this;
937
- smalltalk.send(self, "_deny_", [smalltalk.send(smalltalk.send((smalltalk.Object || Object), "_new", []), "_isNil", [])]);
938
- smalltalk.send(self, "_deny_", [smalltalk.send((($receiver = smalltalk.send((smalltalk.Object || Object), "_new", [])) == nil || $receiver == undefined) ? (function(){return true;})() : $receiver, "__eq", [true])]);
939
- smalltalk.send(self, "_assert_", [smalltalk.send((($receiver = smalltalk.send((smalltalk.Object || Object), "_new", [])) != nil && $receiver != undefined) ? (function(){return true;})() : nil, "__eq", [true])]);
940
- smalltalk.send(self, "_assert_", [smalltalk.send((($receiver = smalltalk.send((smalltalk.Object || Object), "_new", [])) == nil || $receiver == undefined) ? (function(){return false;})() : (function(){return true;})(), "__eq", [true])]);
941
- smalltalk.send(self, "_assert_", [smalltalk.send((($receiver = smalltalk.send((smalltalk.Object || Object), "_new", [])) == nil || $receiver == undefined) ? (function(){return false;})() : (function(){return true;})(), "__eq", [true])]);
1057
+ smalltalk.send(self, "_assert_equals_", ["grul/st", smalltalk.send(self['@grulPackage'], "_commitPathSt", [])]);
942
1058
  return self;}
943
1059
  }),
944
- smalltalk.ObjectTest);
1060
+ smalltalk.PackageWithDefaultCommitPathChangedTest);
945
1061
 
946
1062
  smalltalk.addMethod(
947
- unescape('_testInstVars'),
1063
+ "_testZorkCommitPathJsShouldBeJavascript",
948
1064
  smalltalk.method({
949
- selector: unescape('testInstVars'),
950
- fn: function () {
1065
+ selector: "testZorkCommitPathJsShouldBeJavascript",
1066
+ fn: function (){
951
1067
  var self=this;
952
- var o=nil;
953
- (o=smalltalk.send((smalltalk.ObjectMock || ObjectMock), "_new", []));
954
- smalltalk.send(self, "_assert_equals_", [smalltalk.send(o, "_instVarAt_", [smalltalk.symbolFor("foo")]), nil]);
955
- smalltalk.send(o, "_instVarAt_put_", [smalltalk.symbolFor("foo"), (1)]);
956
- smalltalk.send(self, "_assert_equals_", [smalltalk.send(o, "_instVarAt_", [smalltalk.symbolFor("foo")]), (1)]);
957
- smalltalk.send(self, "_assert_equals_", [smalltalk.send(o, "_instVarAt_", ["foo"]), (1)]);
1068
+ smalltalk.send(self, "_assert_equals_", ["javascripts/", smalltalk.send(self['@zorkPackage'], "_commitPathJs", [])]);
958
1069
  return self;}
959
1070
  }),
960
- smalltalk.ObjectTest);
1071
+ smalltalk.PackageWithDefaultCommitPathChangedTest);
961
1072
 
962
1073
  smalltalk.addMethod(
963
- unescape('_testYourself'),
1074
+ "_testZorkCommitPathStShouldBeSmalltalk",
964
1075
  smalltalk.method({
965
- selector: unescape('testYourself'),
966
- fn: function () {
1076
+ selector: "testZorkCommitPathStShouldBeSmalltalk",
1077
+ fn: function (){
967
1078
  var self=this;
968
- var o=nil;
969
- (o=smalltalk.send((smalltalk.ObjectMock || ObjectMock), "_new", []));
970
- smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send(o, "_yourself", []), "__eq_eq", [o])]);
1079
+ smalltalk.send(self, "_assert_equals_", ["smalltalk/", smalltalk.send(self['@zorkPackage'], "_commitPathSt", [])]);
971
1080
  return self;}
972
1081
  }),
973
- smalltalk.ObjectTest);
1082
+ smalltalk.PackageWithDefaultCommitPathChangedTest);
1083
+
974
1084
 
975
1085
  smalltalk.addMethod(
976
- unescape('_testDNU'),
1086
+ "_shouldInheritSelectors",
977
1087
  smalltalk.method({
978
- selector: unescape('testDNU'),
979
- fn: function () {
1088
+ selector: "shouldInheritSelectors",
1089
+ fn: function (){
980
1090
  var self=this;
981
- smalltalk.send(self, "_should_raise_", [(function(){return smalltalk.send(smalltalk.send((smalltalk.Object || Object), "_new", []), "_foo", []);}), (smalltalk.MessageNotUnderstood || MessageNotUnderstood)]);
1091
+ return false;
982
1092
  return self;}
983
1093
  }),
984
- smalltalk.ObjectTest);
985
-
1094
+ smalltalk.PackageWithDefaultCommitPathChangedTest.klass);
986
1095
 
987
1096
 
988
- smalltalk.addClass('SymbolTest', smalltalk.TestCase, [], 'Kernel-Tests');
1097
+ smalltalk.addClass('PointTest', smalltalk.TestCase, [], 'Kernel-Tests');
989
1098
  smalltalk.addMethod(
990
- unescape('_testEquality'),
1099
+ "_testAccessing",
991
1100
  smalltalk.method({
992
- selector: unescape('testEquality'),
993
- fn: function () {
1101
+ selector: "testAccessing",
1102
+ fn: function (){
994
1103
  var self=this;
995
- smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.symbolFor("hello"), "__eq", [smalltalk.symbolFor("hello")])]);
996
- smalltalk.send(self, "_deny_", [smalltalk.send(smalltalk.symbolFor("hello"), "__eq", [smalltalk.symbolFor("world")])]);
997
- smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.symbolFor("hello"), "__eq", [smalltalk.send(smalltalk.symbolFor("hello"), "_yourself", [])])]);
998
- smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send(smalltalk.symbolFor("hello"), "_yourself", []), "__eq", [smalltalk.symbolFor("hello")])]);
999
- smalltalk.send(self, "_deny_", [smalltalk.send(smalltalk.symbolFor("hello"), "__eq", ["hello"])]);
1000
- smalltalk.send(self, "_deny_", [smalltalk.send("hello", "__eq", [smalltalk.symbolFor("hello")])]);
1104
+ smalltalk.send(self, "_assert_equals_", [smalltalk.send(smalltalk.send((smalltalk.Point || Point), "_x_y_", [(3), (4)]), "_x", []), (3)]);
1105
+ smalltalk.send(self, "_assert_equals_", [smalltalk.send(smalltalk.send((smalltalk.Point || Point), "_x_y_", [(3), (4)]), "_y", []), (4)]);
1106
+ smalltalk.send(self, "_assert_equals_", [smalltalk.send(smalltalk.send(smalltalk.send((smalltalk.Point || Point), "_new", []), "_x_", [(3)]), "_x", []), (3)]);
1107
+ smalltalk.send(self, "_assert_equals_", [smalltalk.send(smalltalk.send(smalltalk.send((smalltalk.Point || Point), "_new", []), "_y_", [(4)]), "_y", []), (4)]);
1001
1108
  return self;}
1002
1109
  }),
1003
- smalltalk.SymbolTest);
1110
+ smalltalk.PointTest);
1004
1111
 
1005
1112
  smalltalk.addMethod(
1006
- unescape('_testAt'),
1113
+ "_testArithmetic",
1007
1114
  smalltalk.method({
1008
- selector: unescape('testAt'),
1009
- fn: function () {
1115
+ selector: "testArithmetic",
1116
+ fn: function (){
1010
1117
  var self=this;
1011
- smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send(smalltalk.symbolFor("hello"), "_at_", [(1)]), "__eq", ["h"])]);
1012
- smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send(smalltalk.symbolFor("hello"), "_at_", [(5)]), "__eq", ["o"])]);
1013
- smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send(smalltalk.symbolFor("hello"), "_at_ifAbsent_", [(6), (function(){return nil;})]), "__eq", [nil])]);
1118
+ smalltalk.send(self, "_assert_equals_", [((($receiver = smalltalk.send((3), "__at", [(4)])).klass === smalltalk.Number) ? $receiver *smalltalk.send((3), "__at", [(4)]) : smalltalk.send($receiver, "__star", [smalltalk.send((3), "__at", [(4)])])), smalltalk.send((smalltalk.Point || Point), "_x_y_", [(9), (16)])]);
1119
+ smalltalk.send(self, "_assert_equals_", [((($receiver = smalltalk.send((3), "__at", [(4)])).klass === smalltalk.Number) ? $receiver +smalltalk.send((3), "__at", [(4)]) : smalltalk.send($receiver, "__plus", [smalltalk.send((3), "__at", [(4)])])), smalltalk.send((smalltalk.Point || Point), "_x_y_", [(6), (8)])]);
1120
+ smalltalk.send(self, "_assert_equals_", [((($receiver = smalltalk.send((3), "__at", [(4)])).klass === smalltalk.Number) ? $receiver -smalltalk.send((3), "__at", [(4)]) : smalltalk.send($receiver, "__minus", [smalltalk.send((3), "__at", [(4)])])), smalltalk.send((smalltalk.Point || Point), "_x_y_", [(0), (0)])]);
1121
+ smalltalk.send(self, "_assert_equals_", [((($receiver = smalltalk.send((6), "__at", [(8)])).klass === smalltalk.Number) ? $receiver /smalltalk.send((3), "__at", [(4)]) : smalltalk.send($receiver, "__slash", [smalltalk.send((3), "__at", [(4)])])), smalltalk.send((smalltalk.Point || Point), "_x_y_", [(2), (2)])]);
1014
1122
  return self;}
1015
1123
  }),
1016
- smalltalk.SymbolTest);
1124
+ smalltalk.PointTest);
1017
1125
 
1018
1126
  smalltalk.addMethod(
1019
- unescape('_testAtPut'),
1127
+ "_testAt",
1020
1128
  smalltalk.method({
1021
- selector: unescape('testAtPut'),
1022
- fn: function () {
1129
+ selector: "testAt",
1130
+ fn: function (){
1023
1131
  var self=this;
1024
- smalltalk.send(self, "_should_raise_", [(function(){return smalltalk.send("hello", "_at_put_", [(1), "a"]);}), (smalltalk.Error || Error)]);
1132
+ smalltalk.send(self, "_assert_equals_", [smalltalk.send((3), "__at", [(4)]), smalltalk.send((smalltalk.Point || Point), "_x_y_", [(3), (4)])]);
1025
1133
  return self;}
1026
1134
  }),
1027
- smalltalk.SymbolTest);
1135
+ smalltalk.PointTest);
1028
1136
 
1029
1137
  smalltalk.addMethod(
1030
- unescape('_testIdentity'),
1138
+ "_testEgality",
1031
1139
  smalltalk.method({
1032
- selector: unescape('testIdentity'),
1033
- fn: function () {
1140
+ selector: "testEgality",
1141
+ fn: function (){
1034
1142
  var self=this;
1035
- smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.symbolFor("hello"), "__eq_eq", [smalltalk.symbolFor("hello")])]);
1036
- smalltalk.send(self, "_deny_", [smalltalk.send(smalltalk.symbolFor("hello"), "__eq_eq", [smalltalk.symbolFor("world")])]);
1037
- smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.symbolFor("hello"), "__eq", [smalltalk.send(smalltalk.symbolFor("hello"), "_yourself", [])])]);
1038
- smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send(smalltalk.symbolFor("hello"), "_yourself", []), "__eq", [smalltalk.send(smalltalk.send(smalltalk.symbolFor("hello"), "_asString", []), "_asSymbol", [])])]);
1143
+ smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send((3), "__at", [(4)]), "__eq", [smalltalk.send((3), "__at", [(4)])])]);
1144
+ smalltalk.send(self, "_deny_", [smalltalk.send(smalltalk.send((3), "__at", [(5)]), "__eq", [smalltalk.send((3), "__at", [(6)])])]);
1039
1145
  return self;}
1040
1146
  }),
1041
- smalltalk.SymbolTest);
1147
+ smalltalk.PointTest);
1042
1148
 
1043
1149
  smalltalk.addMethod(
1044
- unescape('_testComparing'),
1150
+ "_testTranslateBy",
1045
1151
  smalltalk.method({
1046
- selector: unescape('testComparing'),
1047
- fn: function () {
1152
+ selector: "testTranslateBy",
1153
+ fn: function (){
1048
1154
  var self=this;
1049
- smalltalk.send(self, "_assert_", [((($receiver = smalltalk.symbolFor("ab")).klass === smalltalk.Number) ? $receiver >smalltalk.symbolFor("aa") : smalltalk.send($receiver, "__gt", [smalltalk.symbolFor("aa")]))]);
1050
- smalltalk.send(self, "_deny_", [((($receiver = smalltalk.symbolFor("ab")).klass === smalltalk.Number) ? $receiver >smalltalk.symbolFor("ba") : smalltalk.send($receiver, "__gt", [smalltalk.symbolFor("ba")]))]);
1051
- smalltalk.send(self, "_assert_", [((($receiver = smalltalk.symbolFor("ab")).klass === smalltalk.Number) ? $receiver <smalltalk.symbolFor("ba") : smalltalk.send($receiver, "__lt", [smalltalk.symbolFor("ba")]))]);
1052
- smalltalk.send(self, "_deny_", [((($receiver = smalltalk.symbolFor("bb")).klass === smalltalk.Number) ? $receiver <smalltalk.symbolFor("ba") : smalltalk.send($receiver, "__lt", [smalltalk.symbolFor("ba")]))]);
1053
- smalltalk.send(self, "_assert_", [((($receiver = smalltalk.symbolFor("ab")).klass === smalltalk.Number) ? $receiver >=smalltalk.symbolFor("aa") : smalltalk.send($receiver, "__gt_eq", [smalltalk.symbolFor("aa")]))]);
1054
- smalltalk.send(self, "_deny_", [((($receiver = smalltalk.symbolFor("ab")).klass === smalltalk.Number) ? $receiver >=smalltalk.symbolFor("ba") : smalltalk.send($receiver, "__gt_eq", [smalltalk.symbolFor("ba")]))]);
1055
- smalltalk.send(self, "_assert_", [((($receiver = smalltalk.symbolFor("ab")).klass === smalltalk.Number) ? $receiver <=smalltalk.symbolFor("ba") : smalltalk.send($receiver, "__lt_eq", [smalltalk.symbolFor("ba")]))]);
1056
- smalltalk.send(self, "_deny_", [((($receiver = smalltalk.symbolFor("bb")).klass === smalltalk.Number) ? $receiver <=smalltalk.symbolFor("ba") : smalltalk.send($receiver, "__lt_eq", [smalltalk.symbolFor("ba")]))]);
1155
+ smalltalk.send(self, "_assert_equals_", [smalltalk.send((3), "__at", [(4)]), smalltalk.send(smalltalk.send((3), "__at", [(3)]), "_translateBy_", [smalltalk.send((0), "__at", [(1)])])]);
1156
+ smalltalk.send(self, "_assert_equals_", [smalltalk.send((3), "__at", [(2)]), smalltalk.send(smalltalk.send((3), "__at", [(3)]), "_translateBy_", [smalltalk.send((0), "__at", [smalltalk.send((1), "_negated", [])])])]);
1157
+ smalltalk.send(self, "_assert_equals_", [smalltalk.send((5), "__at", [(6)]), smalltalk.send(smalltalk.send((3), "__at", [(3)]), "_translateBy_", [smalltalk.send((2), "__at", [(3)])])]);
1158
+ smalltalk.send(self, "_assert_equals_", [smalltalk.send((0), "__at", [(3)]), smalltalk.send(smalltalk.send((3), "__at", [(3)]), "_translateBy_", [smalltalk.send(smalltalk.send((3), "_negated", []), "__at", [(0)])])]);
1057
1159
  return self;}
1058
1160
  }),
1059
- smalltalk.SymbolTest);
1161
+ smalltalk.PointTest);
1060
1162
 
1163
+
1164
+
1165
+ smalltalk.addClass('RandomTest', smalltalk.TestCase, [], 'Kernel-Tests');
1061
1166
  smalltalk.addMethod(
1062
- unescape('_testSize'),
1167
+ "_textNext",
1063
1168
  smalltalk.method({
1064
- selector: unescape('testSize'),
1065
- fn: function () {
1169
+ selector: "textNext",
1170
+ fn: function (){
1066
1171
  var self=this;
1067
- smalltalk.send(self, "_assert_equals_", [smalltalk.send(smalltalk.symbolFor("a"), "_size", []), (1)]);
1068
- smalltalk.send(self, "_assert_equals_", [smalltalk.send(smalltalk.symbolFor("aaaaa"), "_size", []), (5)]);
1172
+ smalltalk.send((10000), "_timesRepeat_", [(function(){var current=nil;
1173
+ var next=nil;
1174
+ (next=smalltalk.send(smalltalk.send((smalltalk.Random || Random), "_new", []), "_next", []));smalltalk.send(self, "_assert_", [((($receiver = next).klass === smalltalk.Number) ? $receiver >=(0) : smalltalk.send($receiver, "__gt_eq", [(0)]))]);smalltalk.send(self, "_assert_", [((($receiver = next).klass === smalltalk.Number) ? $receiver <(1) : smalltalk.send($receiver, "__lt", [(1)]))]);smalltalk.send(self, "_deny_", [smalltalk.send(current, "__eq", [next])]);return smalltalk.send(next, "__eq", [current]);})]);
1069
1175
  return self;}
1070
1176
  }),
1071
- smalltalk.SymbolTest);
1177
+ smalltalk.RandomTest);
1178
+
1072
1179
 
1180
+
1181
+ smalltalk.addClass('SetTest', smalltalk.TestCase, [], 'Kernel-Tests');
1073
1182
  smalltalk.addMethod(
1074
- unescape('_testAsString'),
1183
+ "_testAddRemove",
1075
1184
  smalltalk.method({
1076
- selector: unescape('testAsString'),
1077
- fn: function () {
1185
+ selector: "testAddRemove",
1186
+ fn: function (){
1078
1187
  var self=this;
1079
- smalltalk.send(self, "_assert_equals_", [smalltalk.send(smalltalk.symbolFor("hello"), "_asString", []), "hello"]);
1188
+ var set=nil;
1189
+ (set=smalltalk.send((smalltalk.Set || Set), "_new", []));
1190
+ smalltalk.send(self, "_assert_", [smalltalk.send(set, "_isEmpty", [])]);
1191
+ smalltalk.send(set, "_add_", [(3)]);
1192
+ smalltalk.send(self, "_assert_", [smalltalk.send(set, "_includes_", [(3)])]);
1193
+ smalltalk.send(set, "_add_", [(5)]);
1194
+ smalltalk.send(self, "_assert_", [smalltalk.send(set, "_includes_", [(5)])]);
1195
+ smalltalk.send(set, "_remove_", [(3)]);
1196
+ smalltalk.send(self, "_deny_", [smalltalk.send(set, "_includes_", [(3)])]);
1080
1197
  return self;}
1081
1198
  }),
1082
- smalltalk.SymbolTest);
1199
+ smalltalk.SetTest);
1083
1200
 
1084
1201
  smalltalk.addMethod(
1085
- unescape('_testAsSymbol'),
1202
+ "_testAt",
1086
1203
  smalltalk.method({
1087
- selector: unescape('testAsSymbol'),
1088
- fn: function () {
1204
+ selector: "testAt",
1205
+ fn: function (){
1089
1206
  var self=this;
1090
- smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.symbolFor("hello"), "__eq_eq", [smalltalk.send(smalltalk.symbolFor("hello"), "_asSymbol", [])])]);
1207
+ smalltalk.send(self, "_should_raise_", [(function(){return smalltalk.send(smalltalk.send((smalltalk.Set || Set), "_new", []), "_at_put_", [(1), (2)]);}), (smalltalk.Error || Error)]);
1091
1208
  return self;}
1092
1209
  }),
1093
- smalltalk.SymbolTest);
1210
+ smalltalk.SetTest);
1094
1211
 
1095
1212
  smalltalk.addMethod(
1096
- unescape('_testCopying'),
1213
+ "_testSize",
1097
1214
  smalltalk.method({
1098
- selector: unescape('testCopying'),
1099
- fn: function () {
1215
+ selector: "testSize",
1216
+ fn: function (){
1100
1217
  var self=this;
1101
- smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send(smalltalk.symbolFor("hello"), "_copy", []), "__eq_eq", [smalltalk.symbolFor("hello")])]);
1102
- smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send(smalltalk.symbolFor("hello"), "_deepCopy", []), "__eq_eq", [smalltalk.symbolFor("hello")])]);
1218
+ smalltalk.send(self, "_assert_equals_", [smalltalk.send(smalltalk.send((smalltalk.Set || Set), "_new", []), "_size", []), (0)]);
1219
+ smalltalk.send(self, "_assert_equals_", [smalltalk.send(smalltalk.send((smalltalk.Set || Set), "_withAll_", [[(1), (2), (3), (4)]]), "_size", []), (4)]);
1220
+ smalltalk.send(self, "_assert_equals_", [smalltalk.send(smalltalk.send((smalltalk.Set || Set), "_withAll_", [[(1), (1), (1), (1)]]), "_size", []), (1)]);
1103
1221
  return self;}
1104
1222
  }),
1105
- smalltalk.SymbolTest);
1223
+ smalltalk.SetTest);
1106
1224
 
1107
1225
  smalltalk.addMethod(
1108
- unescape('_testIsSymbolIsString'),
1226
+ "_testUnicity",
1109
1227
  smalltalk.method({
1110
- selector: unescape('testIsSymbolIsString'),
1111
- fn: function () {
1228
+ selector: "testUnicity",
1229
+ fn: function (){
1112
1230
  var self=this;
1113
- smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.symbolFor("hello"), "_isSymbol", [])]);
1114
- smalltalk.send(self, "_deny_", [smalltalk.send("hello", "_isSymbol", [])]);
1115
- smalltalk.send(self, "_deny_", [smalltalk.send(smalltalk.symbolFor("hello"), "_isString", [])]);
1116
- smalltalk.send(self, "_assert_", [smalltalk.send("hello", "_isString", [])]);
1231
+ var set=nil;
1232
+ (set=smalltalk.send((smalltalk.Set || Set), "_new", []));
1233
+ smalltalk.send(set, "_add_", [(21)]);
1234
+ smalltalk.send(set, "_add_", ["hello"]);
1235
+ smalltalk.send(set, "_add_", [(21)]);
1236
+ smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send(set, "_size", []), "__eq", [(2)])]);
1237
+ smalltalk.send(set, "_add_", ["hello"]);
1238
+ smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send(set, "_size", []), "__eq", [(2)])]);
1239
+ smalltalk.send(self, "_assert_equals_", [smalltalk.send(set, "_asArray", []), [(21), "hello"]]);
1117
1240
  return self;}
1118
1241
  }),
1119
- smalltalk.SymbolTest);
1242
+ smalltalk.SetTest);
1120
1243
 
1121
1244
 
1122
1245
 
1123
- smalltalk.addClass('ObjectMock', smalltalk.Object, ['foo', 'bar'], 'Kernel-Tests');
1246
+ smalltalk.addClass('StringTest', smalltalk.TestCase, [], 'Kernel-Tests');
1124
1247
  smalltalk.addMethod(
1125
- unescape('_foo'),
1248
+ "_testAddRemove",
1126
1249
  smalltalk.method({
1127
- selector: unescape('foo'),
1128
- fn: function () {
1250
+ selector: "testAddRemove",
1251
+ fn: function (){
1129
1252
  var self=this;
1130
- return self['@foo'];
1253
+ smalltalk.send(self, "_should_raise_", [(function(){return smalltalk.send("hello", "_add_", ["a"]);}), (smalltalk.Error || Error)]);
1254
+ smalltalk.send(self, "_should_raise_", [(function(){return smalltalk.send("hello", "_remove_", ["h"]);}), (smalltalk.Error || Error)]);
1131
1255
  return self;}
1132
1256
  }),
1133
- smalltalk.ObjectMock);
1257
+ smalltalk.StringTest);
1134
1258
 
1135
1259
  smalltalk.addMethod(
1136
- unescape('_foo_'),
1260
+ "_testAsArray",
1137
1261
  smalltalk.method({
1138
- selector: unescape('foo%3A'),
1139
- fn: function (anObject) {
1262
+ selector: "testAsArray",
1263
+ fn: function (){
1140
1264
  var self=this;
1141
- (self['@foo']=anObject);
1265
+ smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send("hello", "_asArray", []), "__eq", [["h", "e", "l", "l", "o"]])]);
1142
1266
  return self;}
1143
1267
  }),
1144
- smalltalk.ObjectMock);
1145
-
1146
-
1268
+ smalltalk.StringTest);
1147
1269
 
1148
- smalltalk.addClass('UndefinedTest', smalltalk.TestCase, [], 'Kernel-Tests');
1149
1270
  smalltalk.addMethod(
1150
- unescape('_testIsNil'),
1271
+ "_testAt",
1151
1272
  smalltalk.method({
1152
- selector: unescape('testIsNil'),
1153
- fn: function () {
1273
+ selector: "testAt",
1274
+ fn: function (){
1154
1275
  var self=this;
1155
- smalltalk.send(self, "_assert_", [smalltalk.send(nil, "_isNil", [])]);
1156
- smalltalk.send(self, "_deny_", [smalltalk.send(nil, "_notNil", [])]);
1276
+ smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send("hello", "_at_", [(1)]), "__eq", ["h"])]);
1277
+ smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send("hello", "_at_", [(5)]), "__eq", ["o"])]);
1278
+ smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send("hello", "_at_ifAbsent_", [(6), (function(){return nil;})]), "__eq", [nil])]);
1157
1279
  return self;}
1158
1280
  }),
1159
- smalltalk.UndefinedTest);
1281
+ smalltalk.StringTest);
1160
1282
 
1161
1283
  smalltalk.addMethod(
1162
- unescape('_testIfNil'),
1284
+ "_testAtPut",
1163
1285
  smalltalk.method({
1164
- selector: unescape('testIfNil'),
1165
- fn: function () {
1286
+ selector: "testAtPut",
1287
+ fn: function (){
1166
1288
  var self=this;
1167
- smalltalk.send(self, "_assert_equals_", [(($receiver = nil) == nil || $receiver == undefined) ? (function(){return true;})() : $receiver, true]);
1168
- smalltalk.send(self, "_deny_", [smalltalk.send((($receiver = nil) != nil && $receiver != undefined) ? (function(){return true;})() : nil, "__eq", [true])]);
1169
- smalltalk.send(self, "_assert_equals_", [(($receiver = nil) == nil || $receiver == undefined) ? (function(){return true;})() : (function(){return false;})(), true]);
1170
- smalltalk.send(self, "_deny_", [smalltalk.send((($receiver = nil) == nil || $receiver == undefined) ? (function(){return false;})() : (function(){return true;})(), "__eq", [true])]);
1289
+ smalltalk.send(self, "_should_raise_", [(function(){return smalltalk.send("hello", "_at_put_", [(1), "a"]);}), (smalltalk.Error || Error)]);
1171
1290
  return self;}
1172
1291
  }),
1173
- smalltalk.UndefinedTest);
1292
+ smalltalk.StringTest);
1174
1293
 
1175
1294
  smalltalk.addMethod(
1176
- unescape('_testCopying'),
1295
+ "_testCopyWithoutAll",
1177
1296
  smalltalk.method({
1178
- selector: unescape('testCopying'),
1179
- fn: function () {
1297
+ selector: "testCopyWithoutAll",
1298
+ fn: function (){
1180
1299
  var self=this;
1181
- smalltalk.send(self, "_assert_equals_", [smalltalk.send(nil, "_copy", []), nil]);
1300
+ smalltalk.send(self, "_assert_equals_", ["hello world", smalltalk.send("*hello* *world*", "_copyWithoutAll_", ["*"])]);
1182
1301
  return self;}
1183
1302
  }),
1184
- smalltalk.UndefinedTest);
1303
+ smalltalk.StringTest);
1185
1304
 
1186
1305
  smalltalk.addMethod(
1187
- unescape('_testDeepCopy'),
1306
+ "_testEquality",
1188
1307
  smalltalk.method({
1189
- selector: unescape('testDeepCopy'),
1190
- fn: function () {
1308
+ selector: "testEquality",
1309
+ fn: function (){
1191
1310
  var self=this;
1192
- smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send(nil, "_deepCopy", []), "__eq", [nil])]);
1311
+ smalltalk.send(self, "_assert_", [smalltalk.send("hello", "__eq", ["hello"])]);
1312
+ smalltalk.send(self, "_deny_", [smalltalk.send("hello", "__eq", ["world"])]);
1313
+ smalltalk.send(self, "_assert_", [smalltalk.send("hello", "__eq", [smalltalk.send("hello", "_yourself", [])])]);
1314
+ smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send("hello", "_yourself", []), "__eq", ["hello"])]);
1315
+ smalltalk.send(self, "_deny_", [smalltalk.send("", "__eq", [(0)])]);
1193
1316
  return self;}
1194
1317
  }),
1195
- smalltalk.UndefinedTest);
1196
-
1197
-
1318
+ smalltalk.StringTest);
1198
1319
 
1199
- smalltalk.addClass('PointTest', smalltalk.TestCase, [], 'Kernel-Tests');
1200
1320
  smalltalk.addMethod(
1201
- unescape('_testAccessing'),
1321
+ "_testIdentity",
1202
1322
  smalltalk.method({
1203
- selector: unescape('testAccessing'),
1204
- fn: function () {
1323
+ selector: "testIdentity",
1324
+ fn: function (){
1205
1325
  var self=this;
1206
- smalltalk.send(self, "_assert_equals_", [smalltalk.send(smalltalk.send((smalltalk.Point || Point), "_x_y_", [(3), (4)]), "_x", []), (3)]);
1207
- smalltalk.send(self, "_assert_equals_", [smalltalk.send(smalltalk.send((smalltalk.Point || Point), "_x_y_", [(3), (4)]), "_y", []), (4)]);
1208
- smalltalk.send(self, "_assert_equals_", [smalltalk.send(smalltalk.send(smalltalk.send((smalltalk.Point || Point), "_new", []), "_x_", [(3)]), "_x", []), (3)]);
1209
- smalltalk.send(self, "_assert_equals_", [smalltalk.send(smalltalk.send(smalltalk.send((smalltalk.Point || Point), "_new", []), "_y_", [(4)]), "_y", []), (4)]);
1326
+ smalltalk.send(self, "_assert_", [smalltalk.send("hello", "__eq_eq", ["hello"])]);
1327
+ smalltalk.send(self, "_deny_", [smalltalk.send("hello", "__eq_eq", ["world"])]);
1328
+ smalltalk.send(self, "_assert_", [smalltalk.send("hello", "__eq_eq", [smalltalk.send("hello", "_yourself", [])])]);
1329
+ smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send("hello", "_yourself", []), "__eq_eq", ["hello"])]);
1330
+ smalltalk.send(self, "_deny_", [smalltalk.send("", "__eq_eq", [(0)])]);
1210
1331
  return self;}
1211
1332
  }),
1212
- smalltalk.PointTest);
1333
+ smalltalk.StringTest);
1213
1334
 
1214
1335
  smalltalk.addMethod(
1215
- unescape('_testAt'),
1336
+ "_testIncludesSubString",
1216
1337
  smalltalk.method({
1217
- selector: unescape('testAt'),
1218
- fn: function () {
1338
+ selector: "testIncludesSubString",
1339
+ fn: function (){
1219
1340
  var self=this;
1220
- smalltalk.send(self, "_assert_equals_", [smalltalk.send((3), "__at", [(4)]), smalltalk.send((smalltalk.Point || Point), "_x_y_", [(3), (4)])]);
1341
+ smalltalk.send(self, "_assert_", [smalltalk.send("amber", "_includesSubString_", ["ber"])]);
1342
+ smalltalk.send(self, "_deny_", [smalltalk.send("amber", "_includesSubString_", ["zork"])]);
1221
1343
  return self;}
1222
1344
  }),
1223
- smalltalk.PointTest);
1345
+ smalltalk.StringTest);
1224
1346
 
1225
1347
  smalltalk.addMethod(
1226
- unescape('_testEgality'),
1348
+ "_testJoin",
1227
1349
  smalltalk.method({
1228
- selector: unescape('testEgality'),
1229
- fn: function () {
1350
+ selector: "testJoin",
1351
+ fn: function (){
1230
1352
  var self=this;
1231
- smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send((3), "__at", [(4)]), "__eq", [smalltalk.send((3), "__at", [(4)])])]);
1232
- smalltalk.send(self, "_deny_", [smalltalk.send(smalltalk.send((3), "__at", [(5)]), "__eq", [smalltalk.send((3), "__at", [(6)])])]);
1353
+ smalltalk.send(self, "_assert_equals_", ["hello,world", smalltalk.send(",", "_join_", [["hello", "world"]])]);
1233
1354
  return self;}
1234
1355
  }),
1235
- smalltalk.PointTest);
1356
+ smalltalk.StringTest);
1236
1357
 
1237
1358
  smalltalk.addMethod(
1238
- unescape('_testArithmetic'),
1359
+ "_testSize",
1239
1360
  smalltalk.method({
1240
- selector: unescape('testArithmetic'),
1241
- fn: function () {
1361
+ selector: "testSize",
1362
+ fn: function (){
1242
1363
  var self=this;
1243
- smalltalk.send(self, "_assert_equals_", [((($receiver = smalltalk.send((3), "__at", [(4)])).klass === smalltalk.Number) ? $receiver *smalltalk.send((3), "__at", [(4)]) : smalltalk.send($receiver, "__star", [smalltalk.send((3), "__at", [(4)])])), smalltalk.send((smalltalk.Point || Point), "_x_y_", [(9), (16)])]);
1244
- smalltalk.send(self, "_assert_equals_", [((($receiver = smalltalk.send((3), "__at", [(4)])).klass === smalltalk.Number) ? $receiver +smalltalk.send((3), "__at", [(4)]) : smalltalk.send($receiver, "__plus", [smalltalk.send((3), "__at", [(4)])])), smalltalk.send((smalltalk.Point || Point), "_x_y_", [(6), (8)])]);
1245
- smalltalk.send(self, "_assert_equals_", [((($receiver = smalltalk.send((3), "__at", [(4)])).klass === smalltalk.Number) ? $receiver -smalltalk.send((3), "__at", [(4)]) : smalltalk.send($receiver, "__minus", [smalltalk.send((3), "__at", [(4)])])), smalltalk.send((smalltalk.Point || Point), "_x_y_", [(0), (0)])]);
1246
- smalltalk.send(self, "_assert_equals_", [((($receiver = smalltalk.send((6), "__at", [(8)])).klass === smalltalk.Number) ? $receiver /smalltalk.send((3), "__at", [(4)]) : smalltalk.send($receiver, "__slash", [smalltalk.send((3), "__at", [(4)])])), smalltalk.send((smalltalk.Point || Point), "_x_y_", [(2), (2)])]);
1364
+ smalltalk.send(self, "_assert_equals_", [smalltalk.send("smalltalk", "_size", []), (9)]);
1365
+ smalltalk.send(self, "_assert_equals_", [smalltalk.send("", "_size", []), (0)]);
1247
1366
  return self;}
1248
1367
  }),
1249
- smalltalk.PointTest);
1368
+ smalltalk.StringTest);
1250
1369
 
1251
1370
  smalltalk.addMethod(
1252
- unescape('_testTranslateBy'),
1371
+ "_testStreamContents",
1253
1372
  smalltalk.method({
1254
- selector: unescape('testTranslateBy'),
1373
+ selector: "testStreamContents",
1255
1374
  fn: function (){
1256
1375
  var self=this;
1257
- smalltalk.send(self, "_assert_equals_", [smalltalk.send((3), "__at", [(4)]), smalltalk.send(smalltalk.send((3), "__at", [(3)]), "_translateBy_", [smalltalk.send((0), "__at", [(1)])])]);
1258
- smalltalk.send(self, "_assert_equals_", [smalltalk.send((3), "__at", [(2)]), smalltalk.send(smalltalk.send((3), "__at", [(3)]), "_translateBy_", [smalltalk.send((0), "__at", [smalltalk.send((1), "_negated", [])])])]);
1259
- smalltalk.send(self, "_assert_equals_", [smalltalk.send((5), "__at", [(6)]), smalltalk.send(smalltalk.send((3), "__at", [(3)]), "_translateBy_", [smalltalk.send((2), "__at", [(3)])])]);
1260
- smalltalk.send(self, "_assert_equals_", [smalltalk.send((0), "__at", [(3)]), smalltalk.send(smalltalk.send((3), "__at", [(3)]), "_translateBy_", [smalltalk.send(smalltalk.send((3), "_negated", []), "__at", [(0)])])]);
1376
+ smalltalk.send(self, "_assert_equals_", ["hello world", smalltalk.send((smalltalk.String || String), "_streamContents_", [(function(aStream){return (function($rec){smalltalk.send($rec, "_nextPutAll_", ["hello"]);smalltalk.send($rec, "_space", []);return smalltalk.send($rec, "_nextPutAll_", ["world"]);})(aStream);})])]);
1261
1377
  return self;}
1262
1378
  }),
1263
- smalltalk.PointTest);
1379
+ smalltalk.StringTest);
1264
1380
 
1265
1381
 
1266
1382
 
1267
- smalltalk.addClass('RandomTest', smalltalk.TestCase, [], 'Kernel-Tests');
1383
+ smalltalk.addClass('SymbolTest', smalltalk.TestCase, [], 'Kernel-Tests');
1268
1384
  smalltalk.addMethod(
1269
- unescape('_textNext'),
1385
+ "_testAsString",
1270
1386
  smalltalk.method({
1271
- selector: unescape('textNext'),
1272
- fn: function () {
1387
+ selector: "testAsString",
1388
+ fn: function (){
1273
1389
  var self=this;
1274
- smalltalk.send((10000), "_timesRepeat_", [(function(){var current=nil;
1275
- var next=nil;
1276
- (next=smalltalk.send(smalltalk.send((smalltalk.Random || Random), "_new", []), "_next", []));smalltalk.send(self, "_assert_", [((($receiver = next).klass === smalltalk.Number) ? $receiver >=(0) : smalltalk.send($receiver, "__gt_eq", [(0)]))]);smalltalk.send(self, "_assert_", [((($receiver = next).klass === smalltalk.Number) ? $receiver <(1) : smalltalk.send($receiver, "__lt", [(1)]))]);smalltalk.send(self, "_deny_", [smalltalk.send(current, "__eq", [next])]);return smalltalk.send(next, "__eq", [current]);})]);
1390
+ smalltalk.send(self, "_assert_equals_", [smalltalk.send(smalltalk.symbolFor("hello"), "_asString", []), "hello"]);
1277
1391
  return self;}
1278
1392
  }),
1279
- smalltalk.RandomTest);
1280
-
1281
-
1393
+ smalltalk.SymbolTest);
1282
1394
 
1283
- smalltalk.addClass('ClassBuilderTest', smalltalk.TestCase, ['builder', 'theClass'], 'Kernel-Tests');
1284
1395
  smalltalk.addMethod(
1285
- unescape('_setUp'),
1396
+ "_testAsSymbol",
1286
1397
  smalltalk.method({
1287
- selector: unescape('setUp'),
1288
- fn: function () {
1398
+ selector: "testAsSymbol",
1399
+ fn: function (){
1289
1400
  var self=this;
1290
- (self['@builder']=smalltalk.send((smalltalk.ClassBuilder || ClassBuilder), "_new", []));
1401
+ smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.symbolFor("hello"), "__eq_eq", [smalltalk.send(smalltalk.symbolFor("hello"), "_asSymbol", [])])]);
1291
1402
  return self;}
1292
1403
  }),
1293
- smalltalk.ClassBuilderTest);
1404
+ smalltalk.SymbolTest);
1294
1405
 
1295
1406
  smalltalk.addMethod(
1296
- unescape('_tearDown'),
1407
+ "_testAt",
1297
1408
  smalltalk.method({
1298
- selector: unescape('tearDown'),
1299
- fn: function () {
1409
+ selector: "testAt",
1410
+ fn: function (){
1300
1411
  var self=this;
1301
- (($receiver = self['@theClass']) != nil && $receiver != undefined) ? (function(){smalltalk.send(smalltalk.send((smalltalk.Smalltalk || Smalltalk), "_current", []), "_removeClass_", [self['@theClass']]);return (self['@theClass']=nil);})() : nil;
1412
+ smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send(smalltalk.symbolFor("hello"), "_at_", [(1)]), "__eq", ["h"])]);
1413
+ smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send(smalltalk.symbolFor("hello"), "_at_", [(5)]), "__eq", ["o"])]);
1414
+ smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send(smalltalk.symbolFor("hello"), "_at_ifAbsent_", [(6), (function(){return nil;})]), "__eq", [nil])]);
1302
1415
  return self;}
1303
1416
  }),
1304
- smalltalk.ClassBuilderTest);
1417
+ smalltalk.SymbolTest);
1305
1418
 
1306
1419
  smalltalk.addMethod(
1307
- unescape('_testClassCopy'),
1420
+ "_testAtPut",
1308
1421
  smalltalk.method({
1309
- selector: unescape('testClassCopy'),
1310
- fn: function () {
1422
+ selector: "testAtPut",
1423
+ fn: function (){
1311
1424
  var self=this;
1312
- (self['@theClass']=smalltalk.send(self['@builder'], "_copyClass_named_", [(smalltalk.ObjectMock || ObjectMock), "ObjectMock2"]));
1313
- smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send(self['@theClass'], "_superclass", []), "__eq_eq", [smalltalk.send((smalltalk.ObjectMock || ObjectMock), "_superclass", [])])]);
1314
- smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send(self['@theClass'], "_instanceVariableNames", []), "__eq_eq", [smalltalk.send((smalltalk.ObjectMock || ObjectMock), "_instanceVariableNames", [])])]);
1315
- smalltalk.send(self, "_assert_equals_", [smalltalk.send(self['@theClass'], "_name", []), "ObjectMock2"]);
1316
- smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send(self['@theClass'], "_package", []), "__eq_eq", [smalltalk.send((smalltalk.ObjectMock || ObjectMock), "_package", [])])]);
1317
- smalltalk.send(self, "_assert_equals_", [smalltalk.send(smalltalk.send(self['@theClass'], "_methodDictionary", []), "_keys", []), smalltalk.send(smalltalk.send((smalltalk.ObjectMock || ObjectMock), "_methodDictionary", []), "_keys", [])]);
1425
+ smalltalk.send(self, "_should_raise_", [(function(){return smalltalk.send("hello", "_at_put_", [(1), "a"]);}), (smalltalk.Error || Error)]);
1318
1426
  return self;}
1319
1427
  }),
1320
- smalltalk.ClassBuilderTest);
1428
+ smalltalk.SymbolTest);
1321
1429
 
1322
1430
  smalltalk.addMethod(
1323
- unescape('_testInstanceVariableNames'),
1431
+ "_testComparing",
1324
1432
  smalltalk.method({
1325
- selector: unescape('testInstanceVariableNames'),
1326
- fn: function () {
1433
+ selector: "testComparing",
1434
+ fn: function (){
1327
1435
  var self=this;
1328
- smalltalk.send(self, "_assert_equals_", [smalltalk.send(self['@builder'], "_instanceVariableNamesFor_", [" hello world "]), ["hello", "world"]]);
1436
+ smalltalk.send(self, "_assert_", [((($receiver = smalltalk.symbolFor("ab")).klass === smalltalk.Number) ? $receiver >smalltalk.symbolFor("aa") : smalltalk.send($receiver, "__gt", [smalltalk.symbolFor("aa")]))]);
1437
+ smalltalk.send(self, "_deny_", [((($receiver = smalltalk.symbolFor("ab")).klass === smalltalk.Number) ? $receiver >smalltalk.symbolFor("ba") : smalltalk.send($receiver, "__gt", [smalltalk.symbolFor("ba")]))]);
1438
+ smalltalk.send(self, "_assert_", [((($receiver = smalltalk.symbolFor("ab")).klass === smalltalk.Number) ? $receiver <smalltalk.symbolFor("ba") : smalltalk.send($receiver, "__lt", [smalltalk.symbolFor("ba")]))]);
1439
+ smalltalk.send(self, "_deny_", [((($receiver = smalltalk.symbolFor("bb")).klass === smalltalk.Number) ? $receiver <smalltalk.symbolFor("ba") : smalltalk.send($receiver, "__lt", [smalltalk.symbolFor("ba")]))]);
1440
+ smalltalk.send(self, "_assert_", [((($receiver = smalltalk.symbolFor("ab")).klass === smalltalk.Number) ? $receiver >=smalltalk.symbolFor("aa") : smalltalk.send($receiver, "__gt_eq", [smalltalk.symbolFor("aa")]))]);
1441
+ smalltalk.send(self, "_deny_", [((($receiver = smalltalk.symbolFor("ab")).klass === smalltalk.Number) ? $receiver >=smalltalk.symbolFor("ba") : smalltalk.send($receiver, "__gt_eq", [smalltalk.symbolFor("ba")]))]);
1442
+ smalltalk.send(self, "_assert_", [((($receiver = smalltalk.symbolFor("ab")).klass === smalltalk.Number) ? $receiver <=smalltalk.symbolFor("ba") : smalltalk.send($receiver, "__lt_eq", [smalltalk.symbolFor("ba")]))]);
1443
+ smalltalk.send(self, "_deny_", [((($receiver = smalltalk.symbolFor("bb")).klass === smalltalk.Number) ? $receiver <=smalltalk.symbolFor("ba") : smalltalk.send($receiver, "__lt_eq", [smalltalk.symbolFor("ba")]))]);
1329
1444
  return self;}
1330
1445
  }),
1331
- smalltalk.ClassBuilderTest);
1332
-
1333
-
1446
+ smalltalk.SymbolTest);
1334
1447
 
1335
- smalltalk.addClass('SetTest', smalltalk.TestCase, [], 'Kernel-Tests');
1336
1448
  smalltalk.addMethod(
1337
- unescape('_testUnicity'),
1449
+ "_testCopying",
1338
1450
  smalltalk.method({
1339
- selector: unescape('testUnicity'),
1340
- fn: function () {
1451
+ selector: "testCopying",
1452
+ fn: function (){
1341
1453
  var self=this;
1342
- var set=nil;
1343
- (set=smalltalk.send((smalltalk.Set || Set), "_new", []));
1344
- smalltalk.send(set, "_add_", [(21)]);
1345
- smalltalk.send(set, "_add_", ["hello"]);
1346
- smalltalk.send(set, "_add_", [(21)]);
1347
- smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send(set, "_size", []), "__eq", [(2)])]);
1348
- smalltalk.send(set, "_add_", ["hello"]);
1349
- smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send(set, "_size", []), "__eq", [(2)])]);
1350
- smalltalk.send(self, "_assert_equals_", [smalltalk.send(set, "_asArray", []), [(21), "hello"]]);
1454
+ smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send(smalltalk.symbolFor("hello"), "_copy", []), "__eq_eq", [smalltalk.symbolFor("hello")])]);
1455
+ smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send(smalltalk.symbolFor("hello"), "_deepCopy", []), "__eq_eq", [smalltalk.symbolFor("hello")])]);
1351
1456
  return self;}
1352
1457
  }),
1353
- smalltalk.SetTest);
1458
+ smalltalk.SymbolTest);
1354
1459
 
1355
1460
  smalltalk.addMethod(
1356
- unescape('_testAt'),
1461
+ "_testEquality",
1357
1462
  smalltalk.method({
1358
- selector: unescape('testAt'),
1359
- fn: function () {
1463
+ selector: "testEquality",
1464
+ fn: function (){
1360
1465
  var self=this;
1361
- smalltalk.send(self, "_should_raise_", [(function(){return smalltalk.send(smalltalk.send((smalltalk.Set || Set), "_new", []), "_at_put_", [(1), (2)]);}), (smalltalk.Error || Error)]);
1466
+ smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.symbolFor("hello"), "__eq", [smalltalk.symbolFor("hello")])]);
1467
+ smalltalk.send(self, "_deny_", [smalltalk.send(smalltalk.symbolFor("hello"), "__eq", [smalltalk.symbolFor("world")])]);
1468
+ smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.symbolFor("hello"), "__eq", [smalltalk.send(smalltalk.symbolFor("hello"), "_yourself", [])])]);
1469
+ smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send(smalltalk.symbolFor("hello"), "_yourself", []), "__eq", [smalltalk.symbolFor("hello")])]);
1470
+ smalltalk.send(self, "_deny_", [smalltalk.send(smalltalk.symbolFor("hello"), "__eq", ["hello"])]);
1471
+ smalltalk.send(self, "_deny_", [smalltalk.send("hello", "__eq", [smalltalk.symbolFor("hello")])]);
1362
1472
  return self;}
1363
1473
  }),
1364
- smalltalk.SetTest);
1474
+ smalltalk.SymbolTest);
1365
1475
 
1366
1476
  smalltalk.addMethod(
1367
- unescape('_testAddRemove'),
1477
+ "_testIdentity",
1368
1478
  smalltalk.method({
1369
- selector: unescape('testAddRemove'),
1370
- fn: function () {
1479
+ selector: "testIdentity",
1480
+ fn: function (){
1371
1481
  var self=this;
1372
- var set=nil;
1373
- (set=smalltalk.send((smalltalk.Set || Set), "_new", []));
1374
- smalltalk.send(self, "_assert_", [smalltalk.send(set, "_isEmpty", [])]);
1375
- smalltalk.send(set, "_add_", [(3)]);
1376
- smalltalk.send(self, "_assert_", [smalltalk.send(set, "_includes_", [(3)])]);
1377
- smalltalk.send(set, "_add_", [(5)]);
1378
- smalltalk.send(self, "_assert_", [smalltalk.send(set, "_includes_", [(5)])]);
1379
- smalltalk.send(set, "_remove_", [(3)]);
1380
- smalltalk.send(self, "_deny_", [smalltalk.send(set, "_includes_", [(3)])]);
1482
+ smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.symbolFor("hello"), "__eq_eq", [smalltalk.symbolFor("hello")])]);
1483
+ smalltalk.send(self, "_deny_", [smalltalk.send(smalltalk.symbolFor("hello"), "__eq_eq", [smalltalk.symbolFor("world")])]);
1484
+ smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.symbolFor("hello"), "__eq", [smalltalk.send(smalltalk.symbolFor("hello"), "_yourself", [])])]);
1485
+ smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send(smalltalk.symbolFor("hello"), "_yourself", []), "__eq", [smalltalk.send(smalltalk.send(smalltalk.symbolFor("hello"), "_asString", []), "_asSymbol", [])])]);
1381
1486
  return self;}
1382
1487
  }),
1383
- smalltalk.SetTest);
1488
+ smalltalk.SymbolTest);
1384
1489
 
1385
1490
  smalltalk.addMethod(
1386
- unescape('_testSize'),
1491
+ "_testIsSymbolIsString",
1387
1492
  smalltalk.method({
1388
- selector: unescape('testSize'),
1389
- fn: function () {
1493
+ selector: "testIsSymbolIsString",
1494
+ fn: function (){
1390
1495
  var self=this;
1391
- smalltalk.send(self, "_assert_equals_", [smalltalk.send(smalltalk.send((smalltalk.Set || Set), "_new", []), "_size", []), (0)]);
1392
- smalltalk.send(self, "_assert_equals_", [smalltalk.send(smalltalk.send((smalltalk.Set || Set), "_withAll_", [[(1), (2), (3), (4)]]), "_size", []), (4)]);
1393
- smalltalk.send(self, "_assert_equals_", [smalltalk.send(smalltalk.send((smalltalk.Set || Set), "_withAll_", [[(1), (1), (1), (1)]]), "_size", []), (1)]);
1496
+ smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.symbolFor("hello"), "_isSymbol", [])]);
1497
+ smalltalk.send(self, "_deny_", [smalltalk.send("hello", "_isSymbol", [])]);
1498
+ smalltalk.send(self, "_deny_", [smalltalk.send(smalltalk.symbolFor("hello"), "_isString", [])]);
1499
+ smalltalk.send(self, "_assert_", [smalltalk.send("hello", "_isString", [])]);
1394
1500
  return self;}
1395
1501
  }),
1396
- smalltalk.SetTest);
1397
-
1398
-
1502
+ smalltalk.SymbolTest);
1399
1503
 
1400
- smalltalk.addClass('PackageWithDefaultCommitPathChangedTest', smalltalk.PackageTest, [], 'Kernel-Tests');
1401
1504
  smalltalk.addMethod(
1402
- unescape('_setUp'),
1505
+ "_testSize",
1403
1506
  smalltalk.method({
1404
- selector: unescape('setUp'),
1405
- fn: function () {
1507
+ selector: "testSize",
1508
+ fn: function (){
1406
1509
  var self=this;
1407
- smalltalk.send(self, "_setUp", [], smalltalk.PackageTest);
1408
- (function($rec){smalltalk.send($rec, "_defaultCommitPathJs_", [unescape("javascripts/")]);return smalltalk.send($rec, "_defaultCommitPathSt_", [unescape("smalltalk/")]);})((smalltalk.Package || Package));
1510
+ smalltalk.send(self, "_assert_equals_", [smalltalk.send(smalltalk.symbolFor("a"), "_size", []), (1)]);
1511
+ smalltalk.send(self, "_assert_equals_", [smalltalk.send(smalltalk.symbolFor("aaaaa"), "_size", []), (5)]);
1409
1512
  return self;}
1410
1513
  }),
1411
- smalltalk.PackageWithDefaultCommitPathChangedTest);
1514
+ smalltalk.SymbolTest);
1515
+
1412
1516
 
1413
- smalltalk.addMethod(
1414
- unescape('_testGrulCommitPathJsShouldBeServerGrulJs'),
1415
- smalltalk.method({
1416
- selector: unescape('testGrulCommitPathJsShouldBeServerGrulJs'),
1417
- fn: function () {
1418
- var self=this;
1419
- smalltalk.send(self, "_assert_equals_", [unescape("server/grul/js"), smalltalk.send(self['@grulPackage'], "_commitPathJs", [])]);
1420
- return self;}
1421
- }),
1422
- smalltalk.PackageWithDefaultCommitPathChangedTest);
1423
1517
 
1518
+ smalltalk.addClass('UndefinedTest', smalltalk.TestCase, [], 'Kernel-Tests');
1424
1519
  smalltalk.addMethod(
1425
- unescape('_testGrulCommitPathStShouldBeGrulSt'),
1520
+ "_testCopying",
1426
1521
  smalltalk.method({
1427
- selector: unescape('testGrulCommitPathStShouldBeGrulSt'),
1428
- fn: function () {
1522
+ selector: "testCopying",
1523
+ fn: function (){
1429
1524
  var self=this;
1430
- smalltalk.send(self, "_assert_equals_", [unescape("grul/st"), smalltalk.send(self['@grulPackage'], "_commitPathSt", [])]);
1525
+ smalltalk.send(self, "_assert_equals_", [smalltalk.send(nil, "_copy", []), nil]);
1431
1526
  return self;}
1432
1527
  }),
1433
- smalltalk.PackageWithDefaultCommitPathChangedTest);
1528
+ smalltalk.UndefinedTest);
1434
1529
 
1435
1530
  smalltalk.addMethod(
1436
- unescape('_testZorkCommitPathJsShouldBeJavascript'),
1531
+ "_testDeepCopy",
1437
1532
  smalltalk.method({
1438
- selector: unescape('testZorkCommitPathJsShouldBeJavascript'),
1439
- fn: function () {
1533
+ selector: "testDeepCopy",
1534
+ fn: function (){
1440
1535
  var self=this;
1441
- smalltalk.send(self, "_assert_equals_", [unescape("javascripts/"), smalltalk.send(self['@zorkPackage'], "_commitPathJs", [])]);
1536
+ smalltalk.send(self, "_assert_", [smalltalk.send(smalltalk.send(nil, "_deepCopy", []), "__eq", [nil])]);
1442
1537
  return self;}
1443
1538
  }),
1444
- smalltalk.PackageWithDefaultCommitPathChangedTest);
1539
+ smalltalk.UndefinedTest);
1445
1540
 
1446
1541
  smalltalk.addMethod(
1447
- unescape('_testZorkCommitPathStShouldBeSmalltalk'),
1542
+ "_testIfNil",
1448
1543
  smalltalk.method({
1449
- selector: unescape('testZorkCommitPathStShouldBeSmalltalk'),
1450
- fn: function () {
1544
+ selector: "testIfNil",
1545
+ fn: function (){
1451
1546
  var self=this;
1452
- smalltalk.send(self, "_assert_equals_", [unescape("smalltalk/"), smalltalk.send(self['@zorkPackage'], "_commitPathSt", [])]);
1547
+ smalltalk.send(self, "_assert_equals_", [(($receiver = nil) == nil || $receiver == undefined) ? (function(){return true;})() : $receiver, true]);
1548
+ smalltalk.send(self, "_deny_", [smalltalk.send((($receiver = nil) != nil && $receiver != undefined) ? (function(){return true;})() : nil, "__eq", [true])]);
1549
+ smalltalk.send(self, "_assert_equals_", [(($receiver = nil) == nil || $receiver == undefined) ? (function(){return true;})() : (function(){return false;})(), true]);
1550
+ smalltalk.send(self, "_deny_", [smalltalk.send((($receiver = nil) == nil || $receiver == undefined) ? (function(){return false;})() : (function(){return true;})(), "__eq", [true])]);
1453
1551
  return self;}
1454
1552
  }),
1455
- smalltalk.PackageWithDefaultCommitPathChangedTest);
1456
-
1553
+ smalltalk.UndefinedTest);
1457
1554
 
1458
1555
  smalltalk.addMethod(
1459
- unescape('_shouldInheritSelectors'),
1556
+ "_testIsNil",
1460
1557
  smalltalk.method({
1461
- selector: unescape('shouldInheritSelectors'),
1462
- fn: function () {
1558
+ selector: "testIsNil",
1559
+ fn: function (){
1463
1560
  var self=this;
1464
- return false;
1561
+ smalltalk.send(self, "_assert_", [smalltalk.send(nil, "_isNil", [])]);
1562
+ smalltalk.send(self, "_deny_", [smalltalk.send(nil, "_notNil", [])]);
1465
1563
  return self;}
1466
1564
  }),
1467
- smalltalk.PackageWithDefaultCommitPathChangedTest.klass);
1565
+ smalltalk.UndefinedTest);
1566
+
1468
1567
 
1469
1568