Axxord-Tests.js 34 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934
  1. define(["amber/boot", "amber_core/SUnit", "axxord/Axxord-Axon"], function($boot){"use strict";
  2. if(!("nilAsValue" in $boot))$boot.nilAsValue=$boot.nilAsReceiver;
  3. var $core=$boot.api,nil=$boot.nilAsValue,$nil=$boot.nilAsReceiver,$recv=$boot.asReceiver,$globals=$boot.globals;
  4. $core.addPackage("Axxord-Tests");
  5. ($core.packageDescriptors||$core.packages)["Axxord-Tests"].innerEval = function (expr) { return eval(expr); };
  6. ($core.packageDescriptors||$core.packages)["Axxord-Tests"].transport = {"type":"amd","amdNamespace":"axxord"};
  7. $core.addClass("AxolatorTest", $globals.TestCase, ["rootModel"], "Axxord-Tests");
  8. $core.addMethod(
  9. $core.method({
  10. selector: "testNontrivialModelGetsAppropriateValueForModification",
  11. protocol: "tests",
  12. fn: function (){
  13. var self=this,$self=this;
  14. var isolator,result;
  15. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  16. return $core.withContext(function($ctx1) {
  17. //>>excludeEnd("ctx");
  18. result=nil;
  19. isolator=$recv($globals.Axolator)._on_($globals.HashedCollection._newFromPairs_(["foo",["bar", [(1), [(2), (5)]], "baz"],"moo","zoo"]));
  20. $recv(isolator)._axes_transform_(["foo", (2)],(function(r){
  21. result=r;
  22. return result;
  23. }));
  24. $self._assert_equals_([(1), [(2), (5)]],result);
  25. return self;
  26. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  27. }, function($ctx1) {$ctx1.fill(self,"testNontrivialModelGetsAppropriateValueForModification",{isolator:isolator,result:result},$globals.AxolatorTest)});
  28. //>>excludeEnd("ctx");
  29. },
  30. //>>excludeStart("ide", pragmas.excludeIdeData);
  31. args: [],
  32. source: "testNontrivialModelGetsAppropriateValueForModification\x0a| isolator result |\x0aresult := nil.\x0aisolator := Axolator on: #{ 'foo' -> #('bar' #(1 #(2 5)) 'baz'). 'moo' -> 'zoo' }.\x0aisolator axes: #(foo 2) transform: [:r|result := r].\x0aself assert: #(1 #(2 5)) equals: result",
  33. referencedClasses: ["Axolator"],
  34. //>>excludeEnd("ide");
  35. messageSends: ["on:", "axes:transform:", "assert:equals:"]
  36. }),
  37. $globals.AxolatorTest);
  38. $core.addMethod(
  39. $core.method({
  40. selector: "testNontrivialModelModifiesAppropriateValue",
  41. protocol: "tests",
  42. fn: function (){
  43. var self=this,$self=this;
  44. var isolator,result;
  45. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  46. return $core.withContext(function($ctx1) {
  47. //>>excludeEnd("ctx");
  48. result=nil;
  49. isolator=$recv($globals.Axolator)._on_($globals.HashedCollection._newFromPairs_(["foo",["bar", [(1), [(2), (3)]], "baz"],"moo","zoo"]));
  50. $recv(isolator)._axes_transform_(["foo", (2)],(function(r){
  51. return "new";
  52. }));
  53. $recv(isolator)._axes_consume_(["foo", (2)],(function(r){
  54. result=r;
  55. return result;
  56. }));
  57. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  58. $ctx1.sendIdx["axes:consume:"]=1;
  59. //>>excludeEnd("ctx");
  60. $self._assert_equals_("new",result);
  61. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  62. $ctx1.sendIdx["assert:equals:"]=1;
  63. //>>excludeEnd("ctx");
  64. $recv(isolator)._axes_consume_([],(function(r){
  65. result=r;
  66. return result;
  67. }));
  68. $self._assert_equals_($globals.HashedCollection._newFromPairs_(["foo",["bar", "new", "baz"],"moo","zoo"]),result);
  69. return self;
  70. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  71. }, function($ctx1) {$ctx1.fill(self,"testNontrivialModelModifiesAppropriateValue",{isolator:isolator,result:result},$globals.AxolatorTest)});
  72. //>>excludeEnd("ctx");
  73. },
  74. //>>excludeStart("ide", pragmas.excludeIdeData);
  75. args: [],
  76. source: "testNontrivialModelModifiesAppropriateValue\x0a| isolator result |\x0aresult := nil.\x0aisolator := Axolator on: #{ 'foo' -> #('bar' #(1 #(2 3)) 'baz'). 'moo' -> 'zoo' }.\x0aisolator axes: #(foo 2) transform: [:r|#new].\x0aisolator axes: #(foo 2) consume: [:r|result := r].\x0aself assert: #new equals: result.\x0aisolator axes: #() consume: [:r|result := r].\x0aself assert: #{ 'foo' -> #('bar' #new 'baz'). 'moo' -> 'zoo' } equals: result",
  77. referencedClasses: ["Axolator"],
  78. //>>excludeEnd("ide");
  79. messageSends: ["on:", "axes:transform:", "axes:consume:", "assert:equals:"]
  80. }),
  81. $globals.AxolatorTest);
  82. $core.addMethod(
  83. $core.method({
  84. selector: "testNontrivialModelReturnsAppropriateValue",
  85. protocol: "tests",
  86. fn: function (){
  87. var self=this,$self=this;
  88. var isolator,result;
  89. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  90. return $core.withContext(function($ctx1) {
  91. //>>excludeEnd("ctx");
  92. result=nil;
  93. isolator=$recv($globals.Axolator)._on_($globals.HashedCollection._newFromPairs_(["foo",["bar", [(1), [(2), (3)]], "baz"],"moo","zoo"]));
  94. $recv(isolator)._axes_consume_(["foo", (2)],(function(r){
  95. result=r;
  96. return result;
  97. }));
  98. $self._assert_equals_([(1), [(2), (3)]],result);
  99. return self;
  100. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  101. }, function($ctx1) {$ctx1.fill(self,"testNontrivialModelReturnsAppropriateValue",{isolator:isolator,result:result},$globals.AxolatorTest)});
  102. //>>excludeEnd("ctx");
  103. },
  104. //>>excludeStart("ide", pragmas.excludeIdeData);
  105. args: [],
  106. source: "testNontrivialModelReturnsAppropriateValue\x0a| isolator result |\x0aresult := nil.\x0aisolator := Axolator on: #{ 'foo' -> #('bar' #(1 #(2 3)) 'baz'). 'moo' -> 'zoo' }.\x0aisolator axes: #(foo 2) consume: [:r|result := r].\x0aself assert: #(1 #(2 3)) equals: result",
  107. referencedClasses: ["Axolator"],
  108. //>>excludeEnd("ide");
  109. messageSends: ["on:", "axes:consume:", "assert:equals:"]
  110. }),
  111. $globals.AxolatorTest);
  112. $core.addMethod(
  113. $core.method({
  114. selector: "testRootModelExaminesThenModifiesRoot",
  115. protocol: "tests",
  116. fn: function (){
  117. var self=this,$self=this;
  118. var isolator,result;
  119. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  120. return $core.withContext(function($ctx1) {
  121. //>>excludeEnd("ctx");
  122. result=nil;
  123. isolator=$recv($globals.Axolator)._on_([(1), [(2), (3)]]);
  124. $recv(isolator)._axes_transform_([],(function(r){
  125. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  126. return $core.withContext(function($ctx2) {
  127. //>>excludeEnd("ctx");
  128. return $recv(r)._second();
  129. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  130. }, function($ctx2) {$ctx2.fillBlock({r:r},$ctx1,1)});
  131. //>>excludeEnd("ctx");
  132. }));
  133. $recv(isolator)._axes_consume_([],(function(r){
  134. result=r;
  135. return result;
  136. }));
  137. $self._assert_equals_([(2), (3)],result);
  138. return self;
  139. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  140. }, function($ctx1) {$ctx1.fill(self,"testRootModelExaminesThenModifiesRoot",{isolator:isolator,result:result},$globals.AxolatorTest)});
  141. //>>excludeEnd("ctx");
  142. },
  143. //>>excludeStart("ide", pragmas.excludeIdeData);
  144. args: [],
  145. source: "testRootModelExaminesThenModifiesRoot\x0a| isolator result |\x0aresult := nil.\x0aisolator := Axolator on: #(1 #(2 3)).\x0aisolator axes: #() transform: [:r|r second].\x0aisolator axes: #() consume: [:r|result := r].\x0aself assert: #(2 3) equals: result",
  146. referencedClasses: ["Axolator"],
  147. //>>excludeEnd("ide");
  148. messageSends: ["on:", "axes:transform:", "second", "axes:consume:", "assert:equals:"]
  149. }),
  150. $globals.AxolatorTest);
  151. $core.addMethod(
  152. $core.method({
  153. selector: "testRootModelGetsRootForModification",
  154. protocol: "tests",
  155. fn: function (){
  156. var self=this,$self=this;
  157. var isolator,result;
  158. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  159. return $core.withContext(function($ctx1) {
  160. //>>excludeEnd("ctx");
  161. result=nil;
  162. isolator=$recv($globals.Axolator)._on_([(2), [(1), (0)]]);
  163. $recv(isolator)._axes_transform_([],(function(r){
  164. result=r;
  165. return result;
  166. }));
  167. $self._assert_equals_([(2), [(1), (0)]],result);
  168. return self;
  169. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  170. }, function($ctx1) {$ctx1.fill(self,"testRootModelGetsRootForModification",{isolator:isolator,result:result},$globals.AxolatorTest)});
  171. //>>excludeEnd("ctx");
  172. },
  173. //>>excludeStart("ide", pragmas.excludeIdeData);
  174. args: [],
  175. source: "testRootModelGetsRootForModification\x0a| isolator result |\x0aresult := nil.\x0aisolator := Axolator on: #(2 #(1 0)).\x0aisolator axes: #() transform: [:r|result := r].\x0aself assert: #(2 #(1 0)) equals: result",
  176. referencedClasses: ["Axolator"],
  177. //>>excludeEnd("ide");
  178. messageSends: ["on:", "axes:transform:", "assert:equals:"]
  179. }),
  180. $globals.AxolatorTest);
  181. $core.addMethod(
  182. $core.method({
  183. selector: "testRootModelModifiesAndDeeplyIsolatesInPlaceModifiedRoot",
  184. protocol: "tests",
  185. fn: function (){
  186. var self=this,$self=this;
  187. var isolator,result,newValue;
  188. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  189. return $core.withContext(function($ctx1) {
  190. //>>excludeEnd("ctx");
  191. result=nil;
  192. newValue=nil;
  193. isolator=$recv($globals.Axolator)._on_([(1), [(2), (3)]]);
  194. $recv(isolator)._axes_transform_([],(function(r){
  195. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  196. return $core.withContext(function($ctx2) {
  197. //>>excludeEnd("ctx");
  198. newValue=r;
  199. newValue;
  200. $recv(r)._at_put_((1),(4));
  201. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  202. $ctx2.sendIdx["at:put:"]=1;
  203. //>>excludeEnd("ctx");
  204. return r;
  205. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  206. }, function($ctx2) {$ctx2.fillBlock({r:r},$ctx1,1)});
  207. //>>excludeEnd("ctx");
  208. }));
  209. $recv(newValue)._at_put_((2),"bar");
  210. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  211. $ctx1.sendIdx["at:put:"]=2;
  212. //>>excludeEnd("ctx");
  213. $recv(isolator)._axes_consume_([],(function(r){
  214. result=r;
  215. return result;
  216. }));
  217. $recv(newValue)._at_put_((2),"baz");
  218. $self._assert_equals_([(4), [(2), (3)]],result);
  219. return self;
  220. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  221. }, function($ctx1) {$ctx1.fill(self,"testRootModelModifiesAndDeeplyIsolatesInPlaceModifiedRoot",{isolator:isolator,result:result,newValue:newValue},$globals.AxolatorTest)});
  222. //>>excludeEnd("ctx");
  223. },
  224. //>>excludeStart("ide", pragmas.excludeIdeData);
  225. args: [],
  226. source: "testRootModelModifiesAndDeeplyIsolatesInPlaceModifiedRoot\x0a| isolator result newValue |\x0aresult := nil. newValue := nil.\x0aisolator := Axolator on: #(1 #(2 3)).\x0aisolator axes: #() transform: [:r|newValue := r. r at: 1 put: 4. r].\x0anewValue at: 2 put: 'bar'.\x0aisolator axes: #() consume: [:r|result := r].\x0anewValue at: 2 put: 'baz'.\x0aself assert: #(4 #(2 3)) equals: result",
  227. referencedClasses: ["Axolator"],
  228. //>>excludeEnd("ide");
  229. messageSends: ["on:", "axes:transform:", "at:put:", "axes:consume:", "assert:equals:"]
  230. }),
  231. $globals.AxolatorTest);
  232. $core.addMethod(
  233. $core.method({
  234. selector: "testRootModelModifiesAndDeeplyIsolatesRoot",
  235. protocol: "tests",
  236. fn: function (){
  237. var self=this,$self=this;
  238. var isolator,result,newValue;
  239. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  240. return $core.withContext(function($ctx1) {
  241. //>>excludeEnd("ctx");
  242. var $1;
  243. result=nil;
  244. isolator=$recv($globals.Axolator)._on_([(1), [(2), (3)]]);
  245. newValue=$globals.HashedCollection._newFromPairs_(["foo",[(4), (5), (6)]]);
  246. $recv(isolator)._axes_transform_([],(function(r){
  247. return newValue;
  248. }));
  249. $1=$recv(newValue)._at_("foo");
  250. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  251. $ctx1.sendIdx["at:"]=1;
  252. //>>excludeEnd("ctx");
  253. $recv($1)._at_put_((1),"bar");
  254. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  255. $ctx1.sendIdx["at:put:"]=1;
  256. //>>excludeEnd("ctx");
  257. $recv(isolator)._axes_consume_([],(function(r){
  258. result=r;
  259. return result;
  260. }));
  261. $recv($recv(newValue)._at_("foo"))._at_put_((3),"baz");
  262. $self._assert_equals_($globals.HashedCollection._newFromPairs_(["foo",[(4), (5), (6)]]),result);
  263. return self;
  264. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  265. }, function($ctx1) {$ctx1.fill(self,"testRootModelModifiesAndDeeplyIsolatesRoot",{isolator:isolator,result:result,newValue:newValue},$globals.AxolatorTest)});
  266. //>>excludeEnd("ctx");
  267. },
  268. //>>excludeStart("ide", pragmas.excludeIdeData);
  269. args: [],
  270. source: "testRootModelModifiesAndDeeplyIsolatesRoot\x0a| isolator result newValue |\x0aresult := nil.\x0aisolator := Axolator on: #(1 #(2 3)).\x0anewValue := #{'foo'->#(4 5 6)}.\x0aisolator axes: #() transform: [:r|newValue].\x0a(newValue at: 'foo') at: 1 put: 'bar'.\x0aisolator axes: #() consume: [:r|result := r].\x0a(newValue at: 'foo') at: 3 put: 'baz'.\x0aself assert: #{'foo'->#(4 5 6)} equals: result",
  271. referencedClasses: ["Axolator"],
  272. //>>excludeEnd("ide");
  273. messageSends: ["on:", "axes:transform:", "at:put:", "at:", "axes:consume:", "assert:equals:"]
  274. }),
  275. $globals.AxolatorTest);
  276. $core.addMethod(
  277. $core.method({
  278. selector: "testRootModelModifiesAndIsolatesRoot",
  279. protocol: "tests",
  280. fn: function (){
  281. var self=this,$self=this;
  282. var isolator,result,newValue;
  283. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  284. return $core.withContext(function($ctx1) {
  285. //>>excludeEnd("ctx");
  286. result=nil;
  287. isolator=$recv($globals.Axolator)._on_([(1), [(2), (3)]]);
  288. newValue=$globals.HashedCollection._newFromPairs_(["foo",[(4), (5), (6)]]);
  289. $recv(isolator)._axes_transform_([],(function(r){
  290. return newValue;
  291. }));
  292. $recv(newValue)._at_put_("foo","bar");
  293. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  294. $ctx1.sendIdx["at:put:"]=1;
  295. //>>excludeEnd("ctx");
  296. $recv(isolator)._axes_consume_([],(function(r){
  297. result=r;
  298. return result;
  299. }));
  300. $recv(newValue)._at_put_("foo","baz");
  301. $self._assert_equals_($globals.HashedCollection._newFromPairs_(["foo",[(4), (5), (6)]]),result);
  302. return self;
  303. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  304. }, function($ctx1) {$ctx1.fill(self,"testRootModelModifiesAndIsolatesRoot",{isolator:isolator,result:result,newValue:newValue},$globals.AxolatorTest)});
  305. //>>excludeEnd("ctx");
  306. },
  307. //>>excludeStart("ide", pragmas.excludeIdeData);
  308. args: [],
  309. source: "testRootModelModifiesAndIsolatesRoot\x0a| isolator result newValue |\x0aresult := nil.\x0aisolator := Axolator on: #(1 #(2 3)).\x0anewValue := #{'foo'->#(4 5 6)}.\x0aisolator axes: #() transform: [:r|newValue].\x0anewValue at: 'foo' put: 'bar'.\x0aisolator axes: #() consume: [:r|result := r].\x0anewValue at: 'foo' put: 'baz'.\x0aself assert: #{'foo'->#(4 5 6)} equals: result",
  310. referencedClasses: ["Axolator"],
  311. //>>excludeEnd("ide");
  312. messageSends: ["on:", "axes:transform:", "at:put:", "axes:consume:", "assert:equals:"]
  313. }),
  314. $globals.AxolatorTest);
  315. $core.addMethod(
  316. $core.method({
  317. selector: "testRootModelModifiesRoot",
  318. protocol: "tests",
  319. fn: function (){
  320. var self=this,$self=this;
  321. var isolator,result;
  322. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  323. return $core.withContext(function($ctx1) {
  324. //>>excludeEnd("ctx");
  325. result=nil;
  326. isolator=$recv($globals.Axolator)._on_([(1), [(2), (3)]]);
  327. $recv(isolator)._axes_transform_([],(function(r){
  328. return $globals.HashedCollection._newFromPairs_(["foo",[(4), (5), (6)]]);
  329. }));
  330. $recv(isolator)._axes_consume_([],(function(r){
  331. result=r;
  332. return result;
  333. }));
  334. $self._assert_equals_($globals.HashedCollection._newFromPairs_(["foo",[(4), (5), (6)]]),result);
  335. return self;
  336. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  337. }, function($ctx1) {$ctx1.fill(self,"testRootModelModifiesRoot",{isolator:isolator,result:result},$globals.AxolatorTest)});
  338. //>>excludeEnd("ctx");
  339. },
  340. //>>excludeStart("ide", pragmas.excludeIdeData);
  341. args: [],
  342. source: "testRootModelModifiesRoot\x0a| isolator result |\x0aresult := nil.\x0aisolator := Axolator on: #(1 #(2 3)).\x0aisolator axes: #() transform: [:r|#{'foo'->#(4 5 6)}].\x0aisolator axes: #() consume: [:r|result := r].\x0aself assert: #{'foo'->#(4 5 6)} equals: result",
  343. referencedClasses: ["Axolator"],
  344. //>>excludeEnd("ide");
  345. messageSends: ["on:", "axes:transform:", "axes:consume:", "assert:equals:"]
  346. }),
  347. $globals.AxolatorTest);
  348. $core.addMethod(
  349. $core.method({
  350. selector: "testRootModelReturnsDeeplyIsolatedRoot",
  351. protocol: "tests",
  352. fn: function (){
  353. var self=this,$self=this;
  354. var isolator,result;
  355. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  356. return $core.withContext(function($ctx1) {
  357. //>>excludeEnd("ctx");
  358. result=nil;
  359. isolator=$recv($globals.Axolator)._on_([(1), [(2), (3)]]);
  360. $recv(isolator)._axes_consume_([],(function(r){
  361. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  362. return $core.withContext(function($ctx2) {
  363. //>>excludeEnd("ctx");
  364. return $recv($recv(r)._at_((2)))._at_put_((1),(0));
  365. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  366. }, function($ctx2) {$ctx2.fillBlock({r:r},$ctx1,1)});
  367. //>>excludeEnd("ctx");
  368. }));
  369. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  370. $ctx1.sendIdx["axes:consume:"]=1;
  371. //>>excludeEnd("ctx");
  372. $recv(isolator)._axes_consume_([],(function(r){
  373. result=r;
  374. return result;
  375. }));
  376. $self._assert_equals_([(1), [(2), (3)]],result);
  377. return self;
  378. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  379. }, function($ctx1) {$ctx1.fill(self,"testRootModelReturnsDeeplyIsolatedRoot",{isolator:isolator,result:result},$globals.AxolatorTest)});
  380. //>>excludeEnd("ctx");
  381. },
  382. //>>excludeStart("ide", pragmas.excludeIdeData);
  383. args: [],
  384. source: "testRootModelReturnsDeeplyIsolatedRoot\x0a| isolator result |\x0aresult := nil.\x0aisolator := Axolator on: #(1 #(2 3)).\x0aisolator axes: #() consume: [:r|(r at: 2) at: 1 put: 0].\x0aisolator axes: #() consume: [:r|result := r].\x0aself assert: #(1 #(2 3)) equals: result",
  385. referencedClasses: ["Axolator"],
  386. //>>excludeEnd("ide");
  387. messageSends: ["on:", "axes:consume:", "at:put:", "at:", "assert:equals:"]
  388. }),
  389. $globals.AxolatorTest);
  390. $core.addMethod(
  391. $core.method({
  392. selector: "testRootModelReturnsIsolatedRoot",
  393. protocol: "tests",
  394. fn: function (){
  395. var self=this,$self=this;
  396. var isolator,result;
  397. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  398. return $core.withContext(function($ctx1) {
  399. //>>excludeEnd("ctx");
  400. result=nil;
  401. isolator=$recv($globals.Axolator)._on_([(1), [(2), (4)]]);
  402. $recv(isolator)._axes_consume_([],(function(r){
  403. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  404. return $core.withContext(function($ctx2) {
  405. //>>excludeEnd("ctx");
  406. return $recv(r)._at_put_((2),nil);
  407. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  408. }, function($ctx2) {$ctx2.fillBlock({r:r},$ctx1,1)});
  409. //>>excludeEnd("ctx");
  410. }));
  411. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  412. $ctx1.sendIdx["axes:consume:"]=1;
  413. //>>excludeEnd("ctx");
  414. $recv(isolator)._axes_consume_([],(function(r){
  415. result=r;
  416. return result;
  417. }));
  418. $self._assert_equals_([(1), [(2), (4)]],result);
  419. return self;
  420. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  421. }, function($ctx1) {$ctx1.fill(self,"testRootModelReturnsIsolatedRoot",{isolator:isolator,result:result},$globals.AxolatorTest)});
  422. //>>excludeEnd("ctx");
  423. },
  424. //>>excludeStart("ide", pragmas.excludeIdeData);
  425. args: [],
  426. source: "testRootModelReturnsIsolatedRoot\x0a| isolator result |\x0aresult := nil.\x0aisolator := Axolator on: #(1 #(2 4)).\x0aisolator axes: #() consume: [:r|r at: 2 put: nil].\x0aisolator axes: #() consume: [:r|result := r].\x0aself assert: #(1 #(2 4)) equals: result",
  427. referencedClasses: ["Axolator"],
  428. //>>excludeEnd("ide");
  429. messageSends: ["on:", "axes:consume:", "at:put:", "assert:equals:"]
  430. }),
  431. $globals.AxolatorTest);
  432. $core.addMethod(
  433. $core.method({
  434. selector: "testRootModelReturnsRoot",
  435. protocol: "tests",
  436. fn: function (){
  437. var self=this,$self=this;
  438. var isolator,result;
  439. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  440. return $core.withContext(function($ctx1) {
  441. //>>excludeEnd("ctx");
  442. result=nil;
  443. isolator=$recv($globals.Axolator)._on_([(1), [(2), (3)]]);
  444. $recv(isolator)._axes_consume_([],(function(r){
  445. result=r;
  446. return result;
  447. }));
  448. $self._assert_equals_([(1), [(2), (3)]],result);
  449. return self;
  450. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  451. }, function($ctx1) {$ctx1.fill(self,"testRootModelReturnsRoot",{isolator:isolator,result:result},$globals.AxolatorTest)});
  452. //>>excludeEnd("ctx");
  453. },
  454. //>>excludeStart("ide", pragmas.excludeIdeData);
  455. args: [],
  456. source: "testRootModelReturnsRoot\x0a| isolator result |\x0aresult := nil.\x0aisolator := Axolator on: #(1 #(2 3)).\x0aisolator axes: #() consume: [:r|result := r].\x0aself assert: #(1 #(2 3)) equals: result",
  457. referencedClasses: ["Axolator"],
  458. //>>excludeEnd("ide");
  459. messageSends: ["on:", "axes:consume:", "assert:equals:"]
  460. }),
  461. $globals.AxolatorTest);
  462. $core.addClass("PlainConsumeTransformTest", $globals.TestCase, [], "Axxord-Tests");
  463. $core.addMethod(
  464. $core.method({
  465. selector: "testModelTransformSentToAxon",
  466. protocol: "tests",
  467. fn: function (){
  468. var self=this,$self=this;
  469. var model,result,axon;
  470. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  471. return $core.withContext(function($ctx1) {
  472. //>>excludeEnd("ctx");
  473. result=nil;
  474. model=$globals.HashedCollection._newFromPairs_(["foo",["bar", [(1), [(2), (3)]], "baz"],"moo","zoo"]);
  475. axon=$recv($globals.TestSpyAxon)._new();
  476. $recv(model)._axxord_(axon);
  477. $recv(model)._axes_transform_(["foo", (2)],(function(r){
  478. return "new";
  479. }));
  480. $self._assert_equals_($recv(axon)._changedAspectLog(),[["foo", (2)]]);
  481. return self;
  482. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  483. }, function($ctx1) {$ctx1.fill(self,"testModelTransformSentToAxon",{model:model,result:result,axon:axon},$globals.PlainConsumeTransformTest)});
  484. //>>excludeEnd("ctx");
  485. },
  486. //>>excludeStart("ide", pragmas.excludeIdeData);
  487. args: [],
  488. source: "testModelTransformSentToAxon\x0a| model result axon |\x0aresult := nil.\x0amodel := #{ 'foo' -> #('bar' #(1 #(2 3)) 'baz'). 'moo' -> 'zoo' }.\x0aaxon := TestSpyAxon new.\x0amodel axxord: axon.\x0amodel axes: #(foo 2) transform: [:r | #new].\x0aself assert: axon changedAspectLog equals: #((foo 2))",
  489. referencedClasses: ["TestSpyAxon"],
  490. //>>excludeEnd("ide");
  491. messageSends: ["new", "axxord:", "axes:transform:", "assert:equals:", "changedAspectLog"]
  492. }),
  493. $globals.PlainConsumeTransformTest);
  494. $core.addMethod(
  495. $core.method({
  496. selector: "testNontrivialModelGetsAppropriateValueForTransform",
  497. protocol: "tests",
  498. fn: function (){
  499. var self=this,$self=this;
  500. var model,result;
  501. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  502. return $core.withContext(function($ctx1) {
  503. //>>excludeEnd("ctx");
  504. result=nil;
  505. model=$globals.HashedCollection._newFromPairs_(["foo",["bar", [(1), [(2), (5)]], "baz"],"moo","zoo"]);
  506. $recv(model)._axes_transform_(["foo", (2)],(function(r){
  507. result=r;
  508. return result;
  509. }));
  510. $self._assert_equals_([(1), [(2), (5)]],result);
  511. return self;
  512. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  513. }, function($ctx1) {$ctx1.fill(self,"testNontrivialModelGetsAppropriateValueForTransform",{model:model,result:result},$globals.PlainConsumeTransformTest)});
  514. //>>excludeEnd("ctx");
  515. },
  516. //>>excludeStart("ide", pragmas.excludeIdeData);
  517. args: [],
  518. source: "testNontrivialModelGetsAppropriateValueForTransform\x0a| model result |\x0aresult := nil.\x0amodel := #{ 'foo' -> #('bar' #(1 #(2 5)) 'baz'). 'moo' -> 'zoo' }.\x0amodel axes: #(foo 2) transform: [:r | result := r].\x0aself assert: #(1 #(2 5)) equals: result",
  519. referencedClasses: [],
  520. //>>excludeEnd("ide");
  521. messageSends: ["axes:transform:", "assert:equals:"]
  522. }),
  523. $globals.PlainConsumeTransformTest);
  524. $core.addMethod(
  525. $core.method({
  526. selector: "testNontrivialModelReturnsAppropriateValue",
  527. protocol: "tests",
  528. fn: function (){
  529. var self=this,$self=this;
  530. var model,result;
  531. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  532. return $core.withContext(function($ctx1) {
  533. //>>excludeEnd("ctx");
  534. result=nil;
  535. model=$globals.HashedCollection._newFromPairs_(["foo",["bar", [(1), [(2), (3)]], "baz"],"moo","zoo"]);
  536. $recv(model)._axes_consume_(["foo", (2)],(function(r){
  537. result=r;
  538. return result;
  539. }));
  540. $self._assert_equals_([(1), [(2), (3)]],result);
  541. return self;
  542. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  543. }, function($ctx1) {$ctx1.fill(self,"testNontrivialModelReturnsAppropriateValue",{model:model,result:result},$globals.PlainConsumeTransformTest)});
  544. //>>excludeEnd("ctx");
  545. },
  546. //>>excludeStart("ide", pragmas.excludeIdeData);
  547. args: [],
  548. source: "testNontrivialModelReturnsAppropriateValue\x0a| model result |\x0aresult := nil.\x0amodel := #{ 'foo' -> #('bar' #(1 #(2 3)) 'baz'). 'moo' -> 'zoo' }.\x0amodel axes: #(foo 2) consume: [:r | result := r].\x0aself assert: #(1 #(2 3)) equals: result",
  549. referencedClasses: [],
  550. //>>excludeEnd("ide");
  551. messageSends: ["axes:consume:", "assert:equals:"]
  552. }),
  553. $globals.PlainConsumeTransformTest);
  554. $core.addMethod(
  555. $core.method({
  556. selector: "testNontrivialModelTransformsAppropriateValue",
  557. protocol: "tests",
  558. fn: function (){
  559. var self=this,$self=this;
  560. var model,result;
  561. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  562. return $core.withContext(function($ctx1) {
  563. //>>excludeEnd("ctx");
  564. result=nil;
  565. model=$globals.HashedCollection._newFromPairs_(["foo",["bar", [(1), [(2), (3)]], "baz"],"moo","zoo"]);
  566. $recv(model)._axes_transform_(["foo", (2)],(function(r){
  567. return "new";
  568. }));
  569. $recv(model)._axes_consume_(["foo", (2)],(function(r){
  570. result=r;
  571. return result;
  572. }));
  573. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  574. $ctx1.sendIdx["axes:consume:"]=1;
  575. //>>excludeEnd("ctx");
  576. $self._assert_equals_("new",result);
  577. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  578. $ctx1.sendIdx["assert:equals:"]=1;
  579. //>>excludeEnd("ctx");
  580. $recv(model)._axes_consume_([],(function(r){
  581. result=r;
  582. return result;
  583. }));
  584. $self._assert_equals_($globals.HashedCollection._newFromPairs_(["foo",["bar", "new", "baz"],"moo","zoo"]),result);
  585. return self;
  586. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  587. }, function($ctx1) {$ctx1.fill(self,"testNontrivialModelTransformsAppropriateValue",{model:model,result:result},$globals.PlainConsumeTransformTest)});
  588. //>>excludeEnd("ctx");
  589. },
  590. //>>excludeStart("ide", pragmas.excludeIdeData);
  591. args: [],
  592. source: "testNontrivialModelTransformsAppropriateValue\x0a| model result |\x0aresult := nil.\x0amodel := #{ 'foo' -> #('bar' #(1 #(2 3)) 'baz'). 'moo' -> 'zoo' }.\x0amodel axes: #(foo 2) transform: [:r | #new].\x0amodel axes: #(foo 2) consume: [:r | result := r].\x0aself assert: #new equals: result.\x0amodel axes: #() consume: [:r | result := r].\x0aself assert: #{ 'foo' -> #('bar' #new 'baz'). 'moo' -> 'zoo' } equals: result",
  593. referencedClasses: [],
  594. //>>excludeEnd("ide");
  595. messageSends: ["axes:transform:", "axes:consume:", "assert:equals:"]
  596. }),
  597. $globals.PlainConsumeTransformTest);
  598. $core.addMethod(
  599. $core.method({
  600. selector: "testRootModelCannotTransform",
  601. protocol: "tests",
  602. fn: function (){
  603. var self=this,$self=this;
  604. var model,result;
  605. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  606. return $core.withContext(function($ctx1) {
  607. //>>excludeEnd("ctx");
  608. result=nil;
  609. model=[(1), [(2), (3)]];
  610. $self._should_raise_((function(){
  611. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  612. return $core.withContext(function($ctx2) {
  613. //>>excludeEnd("ctx");
  614. return $recv(model)._axes_transform_([],(function(r){
  615. return $globals.HashedCollection._newFromPairs_(["foo",[(4), (5), (6)]]);
  616. }));
  617. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  618. }, function($ctx2) {$ctx2.fillBlock({},$ctx1,1)});
  619. //>>excludeEnd("ctx");
  620. }),$globals.Error);
  621. return self;
  622. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  623. }, function($ctx1) {$ctx1.fill(self,"testRootModelCannotTransform",{model:model,result:result},$globals.PlainConsumeTransformTest)});
  624. //>>excludeEnd("ctx");
  625. },
  626. //>>excludeStart("ide", pragmas.excludeIdeData);
  627. args: [],
  628. source: "testRootModelCannotTransform\x0a| model result |\x0aresult := nil.\x0amodel := #(1 #(2 3)).\x0aself should: [ model axes: #() transform: [:r | #{'foo'->#(4 5 6)}] ] raise: Error",
  629. referencedClasses: ["Error"],
  630. //>>excludeEnd("ide");
  631. messageSends: ["should:raise:", "axes:transform:"]
  632. }),
  633. $globals.PlainConsumeTransformTest);
  634. $core.addMethod(
  635. $core.method({
  636. selector: "testRootModelReturnsDirectRoot",
  637. protocol: "tests",
  638. fn: function (){
  639. var self=this,$self=this;
  640. var model,result;
  641. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  642. return $core.withContext(function($ctx1) {
  643. //>>excludeEnd("ctx");
  644. result=nil;
  645. model=[(1), [(2), (4)]];
  646. $recv(model)._axes_consume_([],(function(r){
  647. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  648. return $core.withContext(function($ctx2) {
  649. //>>excludeEnd("ctx");
  650. return $recv(r)._at_put_((2),nil);
  651. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  652. }, function($ctx2) {$ctx2.fillBlock({r:r},$ctx1,1)});
  653. //>>excludeEnd("ctx");
  654. }));
  655. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  656. $ctx1.sendIdx["axes:consume:"]=1;
  657. //>>excludeEnd("ctx");
  658. $recv(model)._axes_consume_([],(function(r){
  659. result=r;
  660. return result;
  661. }));
  662. $self._assert_equals_([(1), nil],result);
  663. return self;
  664. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  665. }, function($ctx1) {$ctx1.fill(self,"testRootModelReturnsDirectRoot",{model:model,result:result},$globals.PlainConsumeTransformTest)});
  666. //>>excludeEnd("ctx");
  667. },
  668. //>>excludeStart("ide", pragmas.excludeIdeData);
  669. args: [],
  670. source: "testRootModelReturnsDirectRoot\x0a| model result |\x0aresult := nil.\x0amodel := #(1 #(2 4)).\x0amodel axes: #() consume: [:r | r at: 2 put: nil].\x0amodel axes: #() consume: [:r | result := r].\x0aself assert: #(1 nil) equals: result",
  671. referencedClasses: [],
  672. //>>excludeEnd("ide");
  673. messageSends: ["axes:consume:", "at:put:", "assert:equals:"]
  674. }),
  675. $globals.PlainConsumeTransformTest);
  676. $core.addMethod(
  677. $core.method({
  678. selector: "testRootModelReturnsRoot",
  679. protocol: "tests",
  680. fn: function (){
  681. var self=this,$self=this;
  682. var model,result;
  683. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  684. return $core.withContext(function($ctx1) {
  685. //>>excludeEnd("ctx");
  686. result=nil;
  687. model=[(1), [(2), (3)]];
  688. $recv(model)._axes_consume_([],(function(r){
  689. result=r;
  690. return result;
  691. }));
  692. $self._assert_equals_([(1), [(2), (3)]],result);
  693. return self;
  694. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  695. }, function($ctx1) {$ctx1.fill(self,"testRootModelReturnsRoot",{model:model,result:result},$globals.PlainConsumeTransformTest)});
  696. //>>excludeEnd("ctx");
  697. },
  698. //>>excludeStart("ide", pragmas.excludeIdeData);
  699. args: [],
  700. source: "testRootModelReturnsRoot\x0a| model result |\x0aresult := nil.\x0amodel := #(1 #(2 3)).\x0amodel axes: #() consume: [:r | result := r].\x0aself assert: #(1 #(2 3)) equals: result",
  701. referencedClasses: [],
  702. //>>excludeEnd("ide");
  703. messageSends: ["axes:consume:", "assert:equals:"]
  704. }),
  705. $globals.PlainConsumeTransformTest);
  706. $core.addMethod(
  707. $core.method({
  708. selector: "testRootTransformBlockIsRun",
  709. protocol: "tests",
  710. fn: function (){
  711. var self=this,$self=this;
  712. var model,result;
  713. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  714. return $core.withContext(function($ctx1) {
  715. //>>excludeEnd("ctx");
  716. result=nil;
  717. model=[(2), [(1), (0)]];
  718. $recv((function(){
  719. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  720. return $core.withContext(function($ctx2) {
  721. //>>excludeEnd("ctx");
  722. return $recv(model)._axes_transform_([],(function(r){
  723. result=r;
  724. result;
  725. return model;
  726. }));
  727. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  728. }, function($ctx2) {$ctx2.fillBlock({},$ctx1,1)});
  729. //>>excludeEnd("ctx");
  730. }))._on_do_($globals.Error,(function(){
  731. }));
  732. $self._assert_equals_(result,model);
  733. return self;
  734. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  735. }, function($ctx1) {$ctx1.fill(self,"testRootTransformBlockIsRun",{model:model,result:result},$globals.PlainConsumeTransformTest)});
  736. //>>excludeEnd("ctx");
  737. },
  738. //>>excludeStart("ide", pragmas.excludeIdeData);
  739. args: [],
  740. source: "testRootTransformBlockIsRun\x0a| model result |\x0aresult := nil.\x0amodel := #(2 #(1 0)).\x0a[model axes: #() transform: [:r | result := r. model]] on: Error do: [].\x0aself assert: result equals: model",
  741. referencedClasses: ["Error"],
  742. //>>excludeEnd("ide");
  743. messageSends: ["on:do:", "axes:transform:", "assert:equals:"]
  744. }),
  745. $globals.PlainConsumeTransformTest);
  746. $core.addMethod(
  747. $core.method({
  748. selector: "testRootTransformFailsOnActualChange",
  749. protocol: "tests",
  750. fn: function (){
  751. var self=this,$self=this;
  752. var model;
  753. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  754. return $core.withContext(function($ctx1) {
  755. //>>excludeEnd("ctx");
  756. model=[(2), [(1), (0)]];
  757. $self._should_raise_((function(){
  758. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  759. return $core.withContext(function($ctx2) {
  760. //>>excludeEnd("ctx");
  761. return $recv(model)._axes_transform_([],(function(r){
  762. return "new";
  763. }));
  764. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  765. }, function($ctx2) {$ctx2.fillBlock({},$ctx1,1)});
  766. //>>excludeEnd("ctx");
  767. }),$globals.Error);
  768. return self;
  769. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  770. }, function($ctx1) {$ctx1.fill(self,"testRootTransformFailsOnActualChange",{model:model},$globals.PlainConsumeTransformTest)});
  771. //>>excludeEnd("ctx");
  772. },
  773. //>>excludeStart("ide", pragmas.excludeIdeData);
  774. args: [],
  775. source: "testRootTransformFailsOnActualChange\x0a| model |\x0amodel := #(2 #(1 0)).\x0aself should: [model axes: #() transform: [:r | #new]] raise: Error",
  776. referencedClasses: ["Error"],
  777. //>>excludeEnd("ide");
  778. messageSends: ["should:raise:", "axes:transform:"]
  779. }),
  780. $globals.PlainConsumeTransformTest);
  781. $core.addClass("TestSpyAxon", $globals.Axon, ["changedAspectLog"], "Axxord-Tests");
  782. //>>excludeStart("ide", pragmas.excludeIdeData);
  783. $globals.TestSpyAxon.comment="I am an axon that logs changed aspects. I am useful in tests.";
  784. //>>excludeEnd("ide");
  785. $core.addMethod(
  786. $core.method({
  787. selector: "changed:",
  788. protocol: "action",
  789. fn: function (anAspect){
  790. var self=this,$self=this;
  791. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  792. return $core.withContext(function($ctx1) {
  793. //>>excludeEnd("ctx");
  794. $recv($self["@changedAspectLog"])._add_(anAspect);
  795. return self;
  796. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  797. }, function($ctx1) {$ctx1.fill(self,"changed:",{anAspect:anAspect},$globals.TestSpyAxon)});
  798. //>>excludeEnd("ctx");
  799. },
  800. //>>excludeStart("ide", pragmas.excludeIdeData);
  801. args: ["anAspect"],
  802. source: "changed: anAspect\x0a\x09changedAspectLog add: anAspect",
  803. referencedClasses: [],
  804. //>>excludeEnd("ide");
  805. messageSends: ["add:"]
  806. }),
  807. $globals.TestSpyAxon);
  808. $core.addMethod(
  809. $core.method({
  810. selector: "changedAspectLog",
  811. protocol: "accessing",
  812. fn: function (){
  813. var self=this,$self=this;
  814. return $self["@changedAspectLog"];
  815. },
  816. //>>excludeStart("ide", pragmas.excludeIdeData);
  817. args: [],
  818. source: "changedAspectLog\x0a\x09^ changedAspectLog",
  819. referencedClasses: [],
  820. //>>excludeEnd("ide");
  821. messageSends: []
  822. }),
  823. $globals.TestSpyAxon);
  824. $core.addMethod(
  825. $core.method({
  826. selector: "changedAspectLog:",
  827. protocol: "accessing",
  828. fn: function (anObject){
  829. var self=this,$self=this;
  830. $self["@changedAspectLog"]=anObject;
  831. return self;
  832. },
  833. //>>excludeStart("ide", pragmas.excludeIdeData);
  834. args: ["anObject"],
  835. source: "changedAspectLog: anObject\x0a\x09changedAspectLog := anObject",
  836. referencedClasses: [],
  837. //>>excludeEnd("ide");
  838. messageSends: []
  839. }),
  840. $globals.TestSpyAxon);
  841. $core.addMethod(
  842. $core.method({
  843. selector: "initialize",
  844. protocol: "initialization",
  845. fn: function (){
  846. var self=this,$self=this;
  847. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  848. return $core.withContext(function($ctx1) {
  849. //>>excludeEnd("ctx");
  850. (
  851. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  852. $ctx1.supercall = true,
  853. //>>excludeEnd("ctx");
  854. ($globals.TestSpyAxon.superclass||$boot.nilAsClass).fn.prototype._initialize.apply($self, []));
  855. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  856. $ctx1.supercall = false;
  857. //>>excludeEnd("ctx");;
  858. $self["@changedAspectLog"]=[];
  859. return self;
  860. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  861. }, function($ctx1) {$ctx1.fill(self,"initialize",{},$globals.TestSpyAxon)});
  862. //>>excludeEnd("ctx");
  863. },
  864. //>>excludeStart("ide", pragmas.excludeIdeData);
  865. args: [],
  866. source: "initialize\x0a\x09super initialize.\x0a\x0a\x09changedAspectLog := #()",
  867. referencedClasses: [],
  868. //>>excludeEnd("ide");
  869. messageSends: ["initialize"]
  870. }),
  871. $globals.TestSpyAxon);
  872. });