DOMite-Tests.js 41 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099
  1. define(["amber/boot", "require", "amber/core/SUnit"], function($boot,requirejs){"use strict";
  2. var $core=$boot.api,nil=$boot.nilAsValue,$nil=$boot.nilAsReceiver,$recv=$boot.asReceiver,$globals=$boot.globals;
  3. var $pkg = $core.addPackage("DOMite-Tests");
  4. $pkg.innerEval = function (expr) { return eval(expr); };
  5. $pkg.transport = {"type":"amd","amdNamespace":"domite"};
  6. $core.addClass("DOMiteTest", $globals.TestCase, ["fixtureDiv"], "DOMite-Tests");
  7. $core.addMethod(
  8. $core.method({
  9. selector: "assertBodyEndsWith:",
  10. protocol: "testing",
  11. fn: function (aString){
  12. var self=this,$self=this;
  13. var sanitizedBody,sanitizedAssertion;
  14. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  15. return $core.withContext(function($ctx1) {
  16. //>>excludeEnd("ctx");
  17. var $2,$3,$1;
  18. sanitizedBody=$recv($recv($recv(document)._body())._innerHTML())._replace_with_("\x5cs*","");
  19. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  20. $ctx1.sendIdx["replace:with:"]=1;
  21. //>>excludeEnd("ctx");
  22. sanitizedAssertion=$recv(aString)._replace_with_("\x5cs*","");
  23. $2=$recv(sanitizedBody)._size();
  24. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  25. $ctx1.sendIdx["size"]=1;
  26. //>>excludeEnd("ctx");
  27. $3=$recv(sanitizedAssertion)._size();
  28. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  29. $ctx1.sendIdx["size"]=2;
  30. //>>excludeEnd("ctx");
  31. $1=$recv($2).__gt_eq($3);
  32. $self._assert_($1);
  33. $self._assert_equals_($recv(sanitizedBody)._last_($recv(sanitizedAssertion)._size()),sanitizedAssertion);
  34. return self;
  35. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  36. }, function($ctx1) {$ctx1.fill(self,"assertBodyEndsWith:",{aString:aString,sanitizedBody:sanitizedBody,sanitizedAssertion:sanitizedAssertion},$globals.DOMiteTest)});
  37. //>>excludeEnd("ctx");
  38. },
  39. //>>excludeStart("ide", pragmas.excludeIdeData);
  40. args: ["aString"],
  41. source: "assertBodyEndsWith: aString\x0a\x09| sanitizedBody sanitizedAssertion |\x0a\x09sanitizedBody := document body innerHTML replace: '\x5cs*' with: ''.\x0a\x09sanitizedAssertion := aString replace: '\x5cs*' with: ''.\x0a\x09self assert: sanitizedBody size >= sanitizedAssertion size.\x0a\x09self\x0a\x09\x09assert: (sanitizedBody last: sanitizedAssertion size)\x0a\x09\x09equals: sanitizedAssertion",
  42. referencedClasses: [],
  43. //>>excludeEnd("ide");
  44. messageSends: ["replace:with:", "innerHTML", "body", "assert:", ">=", "size", "assert:equals:", "last:"]
  45. }),
  46. $globals.DOMiteTest);
  47. $core.addMethod(
  48. $core.method({
  49. selector: "setUp",
  50. protocol: "fixture",
  51. fn: function (){
  52. var self=this,$self=this;
  53. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  54. return $core.withContext(function($ctx1) {
  55. //>>excludeEnd("ctx");
  56. $self["@fixtureDiv"]=$recv(document)._createElement_("div");
  57. $recv($recv(document)._body())._appendChild_($self["@fixtureDiv"]);
  58. $recv($self["@fixtureDiv"])._setAttribute_to_("id","fixture");
  59. $recv($self["@fixtureDiv"])._innerHTML_("sentinel");
  60. return self;
  61. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  62. }, function($ctx1) {$ctx1.fill(self,"setUp",{},$globals.DOMiteTest)});
  63. //>>excludeEnd("ctx");
  64. },
  65. //>>excludeStart("ide", pragmas.excludeIdeData);
  66. args: [],
  67. source: "setUp\x0a\x09fixtureDiv := document createElement: 'div'.\x0a\x09document body appendChild: fixtureDiv.\x0a\x09fixtureDiv setAttribute: 'id' to: 'fixture'.\x0a\x09fixtureDiv innerHTML: 'sentinel'",
  68. referencedClasses: [],
  69. //>>excludeEnd("ide");
  70. messageSends: ["createElement:", "appendChild:", "body", "setAttribute:to:", "innerHTML:"]
  71. }),
  72. $globals.DOMiteTest);
  73. $core.addMethod(
  74. $core.method({
  75. selector: "tearDown",
  76. protocol: "fixture",
  77. fn: function (){
  78. var self=this,$self=this;
  79. var lastChild;
  80. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  81. return $core.withContext(function($ctx1) {
  82. //>>excludeEnd("ctx");
  83. var $1;
  84. $1=$recv(document)._body();
  85. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  86. $ctx1.sendIdx["body"]=1;
  87. //>>excludeEnd("ctx");
  88. lastChild=$recv($1)._lastChild();
  89. $self._assert_equals_(lastChild,$self["@fixtureDiv"]);
  90. $recv($recv(document)._body())._removeChild_(lastChild);
  91. return self;
  92. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  93. }, function($ctx1) {$ctx1.fill(self,"tearDown",{lastChild:lastChild},$globals.DOMiteTest)});
  94. //>>excludeEnd("ctx");
  95. },
  96. //>>excludeStart("ide", pragmas.excludeIdeData);
  97. args: [],
  98. source: "tearDown\x0a\x09| lastChild |\x0a\x09lastChild := document body lastChild.\x0a\x09self assert: lastChild equals: fixtureDiv.\x0a\x09document body removeChild: lastChild",
  99. referencedClasses: [],
  100. //>>excludeEnd("ide");
  101. messageSends: ["lastChild", "body", "assert:equals:", "removeChild:"]
  102. }),
  103. $globals.DOMiteTest);
  104. $core.addMethod(
  105. $core.method({
  106. selector: "testDefaultInsertElement",
  107. protocol: "testing",
  108. fn: function (){
  109. var self=this,$self=this;
  110. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  111. return $core.withContext(function($ctx1) {
  112. //>>excludeEnd("ctx");
  113. var $2,$1,$3;
  114. $2=$self._testedClass();
  115. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  116. $ctx1.sendIdx["testedClass"]=1;
  117. //>>excludeEnd("ctx");
  118. $1=$recv($2)._new();
  119. $recv($1).__lt_lt($recv($self._testedClass())._newElement_("p"));
  120. $self._assertBodyEndsWith_("<p></p>");
  121. $3=$recv(document)._body();
  122. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  123. $ctx1.sendIdx["body"]=1;
  124. //>>excludeEnd("ctx");
  125. $recv($3)._removeChild_($recv($recv(document)._body())._lastChild());
  126. return self;
  127. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  128. }, function($ctx1) {$ctx1.fill(self,"testDefaultInsertElement",{},$globals.DOMiteTest)});
  129. //>>excludeEnd("ctx");
  130. },
  131. //>>excludeStart("ide", pragmas.excludeIdeData);
  132. args: [],
  133. source: "testDefaultInsertElement\x0a\x0a\x09self testedClass new << (self testedClass newElement: 'p').\x0a\x09self assertBodyEndsWith: '<p></p>'.\x0a\x09document body removeChild: document body lastChild",
  134. referencedClasses: [],
  135. //>>excludeEnd("ide");
  136. messageSends: ["<<", "new", "testedClass", "newElement:", "assertBodyEndsWith:", "removeChild:", "body", "lastChild"]
  137. }),
  138. $globals.DOMiteTest);
  139. $core.addMethod(
  140. $core.method({
  141. selector: "testDefaultInsertString",
  142. protocol: "testing",
  143. fn: function (){
  144. var self=this,$self=this;
  145. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  146. return $core.withContext(function($ctx1) {
  147. //>>excludeEnd("ctx");
  148. var $1;
  149. $recv($recv($self._testedClass())._new()).__lt_lt("a-foo--in-a-bar");
  150. $self._assertBodyEndsWith_("a-foo--in-a-bar");
  151. $1=$recv(document)._body();
  152. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  153. $ctx1.sendIdx["body"]=1;
  154. //>>excludeEnd("ctx");
  155. $recv($1)._removeChild_($recv($recv(document)._body())._lastChild());
  156. return self;
  157. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  158. }, function($ctx1) {$ctx1.fill(self,"testDefaultInsertString",{},$globals.DOMiteTest)});
  159. //>>excludeEnd("ctx");
  160. },
  161. //>>excludeStart("ide", pragmas.excludeIdeData);
  162. args: [],
  163. source: "testDefaultInsertString\x0a\x09self testedClass new << 'a-foo--in-a-bar'.\x0a\x09self assertBodyEndsWith: 'a-foo--in-a-bar'.\x0a\x09document body removeChild: document body lastChild",
  164. referencedClasses: [],
  165. //>>excludeEnd("ide");
  166. messageSends: ["<<", "new", "testedClass", "assertBodyEndsWith:", "removeChild:", "body", "lastChild"]
  167. }),
  168. $globals.DOMiteTest);
  169. $core.addMethod(
  170. $core.method({
  171. selector: "testDefaultInsertStringInFragment",
  172. protocol: "testing",
  173. fn: function (){
  174. var self=this,$self=this;
  175. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  176. return $core.withContext(function($ctx1) {
  177. //>>excludeEnd("ctx");
  178. var $2,$1,$3;
  179. $2=$self._testedClass();
  180. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  181. $ctx1.sendIdx["testedClass"]=1;
  182. //>>excludeEnd("ctx");
  183. $1=$recv($2)._new();
  184. $recv($1).__lt_lt($recv($recv($self._testedClass())._newStream()).__lt_lt("a-foo--in-a-bar"));
  185. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  186. $ctx1.sendIdx["<<"]=1;
  187. //>>excludeEnd("ctx");
  188. $self._assertBodyEndsWith_("a-foo--in-a-bar");
  189. $3=$recv(document)._body();
  190. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  191. $ctx1.sendIdx["body"]=1;
  192. //>>excludeEnd("ctx");
  193. $recv($3)._removeChild_($recv($recv(document)._body())._lastChild());
  194. return self;
  195. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  196. }, function($ctx1) {$ctx1.fill(self,"testDefaultInsertStringInFragment",{},$globals.DOMiteTest)});
  197. //>>excludeEnd("ctx");
  198. },
  199. //>>excludeStart("ide", pragmas.excludeIdeData);
  200. args: [],
  201. source: "testDefaultInsertStringInFragment\x0a\x09self testedClass new << (self testedClass newStream << 'a-foo--in-a-bar').\x0a\x09self assertBodyEndsWith: 'a-foo--in-a-bar'.\x0a\x09document body removeChild: document body lastChild",
  202. referencedClasses: [],
  203. //>>excludeEnd("ide");
  204. messageSends: ["<<", "new", "testedClass", "newStream", "assertBodyEndsWith:", "removeChild:", "body", "lastChild"]
  205. }),
  206. $globals.DOMiteTest);
  207. $core.addMethod(
  208. $core.method({
  209. selector: "testFromBadSelectorIsInvalid",
  210. protocol: "testing",
  211. fn: function (){
  212. var self=this,$self=this;
  213. var d;
  214. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  215. return $core.withContext(function($ctx1) {
  216. //>>excludeEnd("ctx");
  217. var $1,$2,$3,$4;
  218. $1=$self._testedClass();
  219. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  220. $ctx1.sendIdx["testedClass"]=1;
  221. //>>excludeEnd("ctx");
  222. d=$recv($1)._at_("#goo");
  223. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  224. $ctx1.sendIdx["at:"]=1;
  225. //>>excludeEnd("ctx");
  226. $2=$recv(d)._isInvalid();
  227. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  228. $ctx1.sendIdx["isInvalid"]=1;
  229. //>>excludeEnd("ctx");
  230. $self._assert_($2);
  231. $3=$self._testedClass();
  232. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  233. $ctx1.sendIdx["testedClass"]=2;
  234. //>>excludeEnd("ctx");
  235. d=$recv($3)._at_("body");
  236. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  237. $ctx1.sendIdx["at:"]=2;
  238. //>>excludeEnd("ctx");
  239. $4=$recv(d)._isInvalid();
  240. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  241. $ctx1.sendIdx["isInvalid"]=2;
  242. //>>excludeEnd("ctx");
  243. $self._deny_($4);
  244. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  245. $ctx1.sendIdx["deny:"]=1;
  246. //>>excludeEnd("ctx");
  247. d=$recv($self._testedClass())._at_("html body div#fixture");
  248. $self._deny_($recv(d)._isInvalid());
  249. return self;
  250. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  251. }, function($ctx1) {$ctx1.fill(self,"testFromBadSelectorIsInvalid",{d:d},$globals.DOMiteTest)});
  252. //>>excludeEnd("ctx");
  253. },
  254. //>>excludeStart("ide", pragmas.excludeIdeData);
  255. args: [],
  256. source: "testFromBadSelectorIsInvalid\x0a\x09| d |\x0a\x09d := self testedClass at: '#goo'.\x0a\x09self assert: d isInvalid.\x0a\x09d := self testedClass at: 'body'.\x0a\x09self deny: d isInvalid.\x0a\x09d := self testedClass at: 'html body div#fixture'.\x0a\x09self deny: d isInvalid",
  257. referencedClasses: [],
  258. //>>excludeEnd("ide");
  259. messageSends: ["at:", "testedClass", "assert:", "isInvalid", "deny:"]
  260. }),
  261. $globals.DOMiteTest);
  262. $core.addMethod(
  263. $core.method({
  264. selector: "testInsertDomNode",
  265. protocol: "testing",
  266. fn: function (){
  267. var self=this,$self=this;
  268. var d;
  269. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  270. return $core.withContext(function($ctx1) {
  271. //>>excludeEnd("ctx");
  272. d=$recv($self._testedClass())._fromElement_($self["@fixtureDiv"]);
  273. $recv(d).__lt_lt($recv(document)._createElement_("pre"));
  274. $self._assertBodyEndsWith_(">sentinel<pre></pre></div>");
  275. return self;
  276. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  277. }, function($ctx1) {$ctx1.fill(self,"testInsertDomNode",{d:d},$globals.DOMiteTest)});
  278. //>>excludeEnd("ctx");
  279. },
  280. //>>excludeStart("ide", pragmas.excludeIdeData);
  281. args: [],
  282. source: "testInsertDomNode\x0a\x09| d |\x0a\x09d := self testedClass fromElement: fixtureDiv.\x0a\x09d << (document createElement: 'pre').\x0a\x09self assertBodyEndsWith: '>sentinel<pre></pre></div>'",
  283. referencedClasses: [],
  284. //>>excludeEnd("ide");
  285. messageSends: ["fromElement:", "testedClass", "<<", "createElement:", "assertBodyEndsWith:"]
  286. }),
  287. $globals.DOMiteTest);
  288. $core.addMethod(
  289. $core.method({
  290. selector: "testInsertDomNodeInFragment",
  291. protocol: "testing",
  292. fn: function (){
  293. var self=this,$self=this;
  294. var d;
  295. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  296. return $core.withContext(function($ctx1) {
  297. //>>excludeEnd("ctx");
  298. var $1;
  299. $1=$self._testedClass();
  300. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  301. $ctx1.sendIdx["testedClass"]=1;
  302. //>>excludeEnd("ctx");
  303. d=$recv($1)._at_("#fixture");
  304. $recv(d).__lt_lt($recv($recv($self._testedClass())._newStream()).__lt_lt($recv(document)._createElement_("script")));
  305. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  306. $ctx1.sendIdx["<<"]=1;
  307. //>>excludeEnd("ctx");
  308. $self._assertBodyEndsWith_(">sentinel<script></script></div>");
  309. return self;
  310. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  311. }, function($ctx1) {$ctx1.fill(self,"testInsertDomNodeInFragment",{d:d},$globals.DOMiteTest)});
  312. //>>excludeEnd("ctx");
  313. },
  314. //>>excludeStart("ide", pragmas.excludeIdeData);
  315. args: [],
  316. source: "testInsertDomNodeInFragment\x0a\x09| d |\x0a\x09d := self testedClass at: '#fixture'.\x0a\x09d << (self testedClass newStream << (document createElement: 'script')).\x0a\x09self assertBodyEndsWith: '>sentinel<script></script></div>'",
  317. referencedClasses: [],
  318. //>>excludeEnd("ide");
  319. messageSends: ["at:", "testedClass", "<<", "newStream", "createElement:", "assertBodyEndsWith:"]
  320. }),
  321. $globals.DOMiteTest);
  322. $core.addMethod(
  323. $core.method({
  324. selector: "testInsertDomNodeInRawDomFragment",
  325. protocol: "testing",
  326. fn: function (){
  327. var self=this,$self=this;
  328. var d,f;
  329. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  330. return $core.withContext(function($ctx1) {
  331. //>>excludeEnd("ctx");
  332. d=$recv($self._testedClass())._at_("#fixture");
  333. f=$recv(document)._createDocumentFragment();
  334. $recv(f)._appendChild_($recv(document)._createElement_("script"));
  335. $recv(d).__lt_lt(f);
  336. $self._assertBodyEndsWith_(">sentinel<script></script></div>");
  337. return self;
  338. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  339. }, function($ctx1) {$ctx1.fill(self,"testInsertDomNodeInRawDomFragment",{d:d,f:f},$globals.DOMiteTest)});
  340. //>>excludeEnd("ctx");
  341. },
  342. //>>excludeStart("ide", pragmas.excludeIdeData);
  343. args: [],
  344. source: "testInsertDomNodeInRawDomFragment\x0a\x09| d f |\x0a\x09d := self testedClass at: '#fixture'.\x0a\x09f := document createDocumentFragment.\x0a\x09f appendChild: (document createElement: 'script').\x0a\x09d << f.\x0a\x09self assertBodyEndsWith: '>sentinel<script></script></div>'",
  345. referencedClasses: [],
  346. //>>excludeEnd("ide");
  347. messageSends: ["at:", "testedClass", "createDocumentFragment", "appendChild:", "createElement:", "<<", "assertBodyEndsWith:"]
  348. }),
  349. $globals.DOMiteTest);
  350. $core.addMethod(
  351. $core.method({
  352. selector: "testInsertElement",
  353. protocol: "testing",
  354. fn: function (){
  355. var self=this,$self=this;
  356. var d;
  357. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  358. return $core.withContext(function($ctx1) {
  359. //>>excludeEnd("ctx");
  360. var $1;
  361. $1=$self._testedClass();
  362. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  363. $ctx1.sendIdx["testedClass"]=1;
  364. //>>excludeEnd("ctx");
  365. d=$recv($1)._at_("html body div#fixture");
  366. $recv(d).__lt_lt($recv($self._testedClass())._newElement_("p"));
  367. $self._assertBodyEndsWith_(">sentinel<p></p></div>");
  368. return self;
  369. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  370. }, function($ctx1) {$ctx1.fill(self,"testInsertElement",{d:d},$globals.DOMiteTest)});
  371. //>>excludeEnd("ctx");
  372. },
  373. //>>excludeStart("ide", pragmas.excludeIdeData);
  374. args: [],
  375. source: "testInsertElement\x0a\x09| d |\x0a\x09d := self testedClass at: 'html body div#fixture'.\x0a\x09d << (self testedClass newElement: 'p').\x0a\x09self assertBodyEndsWith: '>sentinel<p></p></div>'",
  376. referencedClasses: [],
  377. //>>excludeEnd("ide");
  378. messageSends: ["at:", "testedClass", "<<", "newElement:", "assertBodyEndsWith:"]
  379. }),
  380. $globals.DOMiteTest);
  381. $core.addMethod(
  382. $core.method({
  383. selector: "testInsertElementTwoLevel",
  384. protocol: "testing",
  385. fn: function (){
  386. var self=this,$self=this;
  387. var d,p,s;
  388. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  389. return $core.withContext(function($ctx1) {
  390. //>>excludeEnd("ctx");
  391. var $1,$2;
  392. $1=$self._testedClass();
  393. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  394. $ctx1.sendIdx["testedClass"]=1;
  395. //>>excludeEnd("ctx");
  396. d=$recv($1)._fromElement_($self["@fixtureDiv"]);
  397. $2=$self._testedClass();
  398. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  399. $ctx1.sendIdx["testedClass"]=2;
  400. //>>excludeEnd("ctx");
  401. p=$recv($2)._newElement_("p");
  402. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  403. $ctx1.sendIdx["newElement:"]=1;
  404. //>>excludeEnd("ctx");
  405. $recv(d).__lt_lt(p);
  406. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  407. $ctx1.sendIdx["<<"]=1;
  408. //>>excludeEnd("ctx");
  409. s=$recv($self._testedClass())._newElement_("span");
  410. $recv(p).__lt_lt(s);
  411. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  412. $ctx1.sendIdx["<<"]=2;
  413. //>>excludeEnd("ctx");
  414. $recv(s).__lt_lt("dom-mite");
  415. $self._assertBodyEndsWith_(">sentinel<p><span>dom-mite</span></p></div>");
  416. return self;
  417. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  418. }, function($ctx1) {$ctx1.fill(self,"testInsertElementTwoLevel",{d:d,p:p,s:s},$globals.DOMiteTest)});
  419. //>>excludeEnd("ctx");
  420. },
  421. //>>excludeStart("ide", pragmas.excludeIdeData);
  422. args: [],
  423. source: "testInsertElementTwoLevel\x0a\x09| d p s |\x0a\x09d := self testedClass fromElement: fixtureDiv.\x0a\x09p := self testedClass newElement: 'p'.\x0a\x09d << p.\x0a\x09s := self testedClass newElement: 'span'.\x0a\x09p << s.\x0a\x09s << 'dom-mite'.\x0a\x09self assertBodyEndsWith: '>sentinel<p><span>dom-mite</span></p></div>'",
  424. referencedClasses: [],
  425. //>>excludeEnd("ide");
  426. messageSends: ["fromElement:", "testedClass", "newElement:", "<<", "assertBodyEndsWith:"]
  427. }),
  428. $globals.DOMiteTest);
  429. $core.addMethod(
  430. $core.method({
  431. selector: "testInsertElementTwoLevelViaFragments",
  432. protocol: "testing",
  433. fn: function (){
  434. var self=this,$self=this;
  435. var d,p,s;
  436. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  437. return $core.withContext(function($ctx1) {
  438. //>>excludeEnd("ctx");
  439. var $1,$2,$3,$6,$5,$4,$7,$8,$11,$10,$9;
  440. $1=$self._testedClass();
  441. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  442. $ctx1.sendIdx["testedClass"]=1;
  443. //>>excludeEnd("ctx");
  444. d=$recv($1)._at_("#fixture");
  445. $2=$self._testedClass();
  446. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  447. $ctx1.sendIdx["testedClass"]=2;
  448. //>>excludeEnd("ctx");
  449. p=$recv($2)._newElement_("p");
  450. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  451. $ctx1.sendIdx["newElement:"]=1;
  452. //>>excludeEnd("ctx");
  453. $3=d;
  454. $6=$self._testedClass();
  455. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  456. $ctx1.sendIdx["testedClass"]=3;
  457. //>>excludeEnd("ctx");
  458. $5=$recv($6)._newStream();
  459. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  460. $ctx1.sendIdx["newStream"]=1;
  461. //>>excludeEnd("ctx");
  462. $4=$recv($5).__lt_lt(p);
  463. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  464. $ctx1.sendIdx["<<"]=2;
  465. //>>excludeEnd("ctx");
  466. $recv($3).__lt_lt($4);
  467. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  468. $ctx1.sendIdx["<<"]=1;
  469. //>>excludeEnd("ctx");
  470. $7=$self._testedClass();
  471. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  472. $ctx1.sendIdx["testedClass"]=4;
  473. //>>excludeEnd("ctx");
  474. s=$recv($7)._newElement_("span");
  475. $8=p;
  476. $11=$self._testedClass();
  477. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  478. $ctx1.sendIdx["testedClass"]=5;
  479. //>>excludeEnd("ctx");
  480. $10=$recv($11)._newStream();
  481. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  482. $ctx1.sendIdx["newStream"]=2;
  483. //>>excludeEnd("ctx");
  484. $9=$recv($10).__lt_lt(s);
  485. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  486. $ctx1.sendIdx["<<"]=4;
  487. //>>excludeEnd("ctx");
  488. $recv($8).__lt_lt($9);
  489. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  490. $ctx1.sendIdx["<<"]=3;
  491. //>>excludeEnd("ctx");
  492. $recv(s).__lt_lt($recv($recv($self._testedClass())._newStream()).__lt_lt("dom-mite"));
  493. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  494. $ctx1.sendIdx["<<"]=5;
  495. //>>excludeEnd("ctx");
  496. $self._assertBodyEndsWith_(">sentinel<p><span>dom-mite</span></p></div>");
  497. return self;
  498. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  499. }, function($ctx1) {$ctx1.fill(self,"testInsertElementTwoLevelViaFragments",{d:d,p:p,s:s},$globals.DOMiteTest)});
  500. //>>excludeEnd("ctx");
  501. },
  502. //>>excludeStart("ide", pragmas.excludeIdeData);
  503. args: [],
  504. source: "testInsertElementTwoLevelViaFragments\x0a\x09| d p s |\x0a\x09d := self testedClass at: '#fixture'.\x0a\x09p := self testedClass newElement: 'p'.\x0a\x09d << (self testedClass newStream << p).\x0a\x09s := self testedClass newElement: 'span'.\x0a\x09p << (self testedClass newStream << s).\x0a\x09s << (self testedClass newStream << 'dom-mite').\x0a\x09self assertBodyEndsWith: '>sentinel<p><span>dom-mite</span></p></div>'",
  505. referencedClasses: [],
  506. //>>excludeEnd("ide");
  507. messageSends: ["at:", "testedClass", "newElement:", "<<", "newStream", "assertBodyEndsWith:"]
  508. }),
  509. $globals.DOMiteTest);
  510. $core.addMethod(
  511. $core.method({
  512. selector: "testInsertElementTwoLevelViaTwoLevelFragments",
  513. protocol: "testing",
  514. fn: function (){
  515. var self=this,$self=this;
  516. var d,p,s;
  517. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  518. return $core.withContext(function($ctx1) {
  519. //>>excludeEnd("ctx");
  520. var $1,$2,$3,$6,$5,$9,$8,$7,$4,$10,$11,$14,$13,$17,$16,$15,$12,$18,$21,$20,$19;
  521. $1=$self._testedClass();
  522. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  523. $ctx1.sendIdx["testedClass"]=1;
  524. //>>excludeEnd("ctx");
  525. d=$recv($1)._fromElement_($self["@fixtureDiv"]);
  526. $2=$self._testedClass();
  527. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  528. $ctx1.sendIdx["testedClass"]=2;
  529. //>>excludeEnd("ctx");
  530. p=$recv($2)._newElement_("p");
  531. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  532. $ctx1.sendIdx["newElement:"]=1;
  533. //>>excludeEnd("ctx");
  534. $3=d;
  535. $6=$self._testedClass();
  536. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  537. $ctx1.sendIdx["testedClass"]=3;
  538. //>>excludeEnd("ctx");
  539. $5=$recv($6)._newStream();
  540. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  541. $ctx1.sendIdx["newStream"]=1;
  542. //>>excludeEnd("ctx");
  543. $9=$self._testedClass();
  544. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  545. $ctx1.sendIdx["testedClass"]=4;
  546. //>>excludeEnd("ctx");
  547. $8=$recv($9)._newStream();
  548. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  549. $ctx1.sendIdx["newStream"]=2;
  550. //>>excludeEnd("ctx");
  551. $7=$recv($8).__lt_lt(p);
  552. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  553. $ctx1.sendIdx["<<"]=3;
  554. //>>excludeEnd("ctx");
  555. $4=$recv($5).__lt_lt($7);
  556. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  557. $ctx1.sendIdx["<<"]=2;
  558. //>>excludeEnd("ctx");
  559. $recv($3).__lt_lt($4);
  560. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  561. $ctx1.sendIdx["<<"]=1;
  562. //>>excludeEnd("ctx");
  563. $10=$self._testedClass();
  564. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  565. $ctx1.sendIdx["testedClass"]=5;
  566. //>>excludeEnd("ctx");
  567. s=$recv($10)._newElement_("span");
  568. $11=p;
  569. $14=$self._testedClass();
  570. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  571. $ctx1.sendIdx["testedClass"]=6;
  572. //>>excludeEnd("ctx");
  573. $13=$recv($14)._newStream();
  574. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  575. $ctx1.sendIdx["newStream"]=3;
  576. //>>excludeEnd("ctx");
  577. $17=$self._testedClass();
  578. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  579. $ctx1.sendIdx["testedClass"]=7;
  580. //>>excludeEnd("ctx");
  581. $16=$recv($17)._newStream();
  582. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  583. $ctx1.sendIdx["newStream"]=4;
  584. //>>excludeEnd("ctx");
  585. $15=$recv($16).__lt_lt(s);
  586. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  587. $ctx1.sendIdx["<<"]=6;
  588. //>>excludeEnd("ctx");
  589. $12=$recv($13).__lt_lt($15);
  590. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  591. $ctx1.sendIdx["<<"]=5;
  592. //>>excludeEnd("ctx");
  593. $recv($11).__lt_lt($12);
  594. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  595. $ctx1.sendIdx["<<"]=4;
  596. //>>excludeEnd("ctx");
  597. $18=s;
  598. $21=$self._testedClass();
  599. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  600. $ctx1.sendIdx["testedClass"]=8;
  601. //>>excludeEnd("ctx");
  602. $20=$recv($21)._newStream();
  603. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  604. $ctx1.sendIdx["newStream"]=5;
  605. //>>excludeEnd("ctx");
  606. $19=$recv($20).__lt_lt($recv($recv($self._testedClass())._newStream()).__lt_lt("dom-mite"));
  607. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  608. $ctx1.sendIdx["<<"]=8;
  609. //>>excludeEnd("ctx");
  610. $recv($18).__lt_lt($19);
  611. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  612. $ctx1.sendIdx["<<"]=7;
  613. //>>excludeEnd("ctx");
  614. $self._assertBodyEndsWith_(">sentinel<p><span>dom-mite</span></p></div>");
  615. return self;
  616. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  617. }, function($ctx1) {$ctx1.fill(self,"testInsertElementTwoLevelViaTwoLevelFragments",{d:d,p:p,s:s},$globals.DOMiteTest)});
  618. //>>excludeEnd("ctx");
  619. },
  620. //>>excludeStart("ide", pragmas.excludeIdeData);
  621. args: [],
  622. source: "testInsertElementTwoLevelViaTwoLevelFragments\x0a\x09| d p s |\x0a\x09d := self testedClass fromElement: fixtureDiv.\x0a\x09p := self testedClass newElement: 'p'.\x0a\x09d << (self testedClass newStream << (self testedClass newStream << p)).\x0a\x09s := self testedClass newElement: 'span'.\x0a\x09p << (self testedClass newStream << (self testedClass newStream << s)).\x0a\x09s << (self testedClass newStream << (self testedClass newStream << 'dom-mite')).\x0a\x09self assertBodyEndsWith: '>sentinel<p><span>dom-mite</span></p></div>'",
  623. referencedClasses: [],
  624. //>>excludeEnd("ide");
  625. messageSends: ["fromElement:", "testedClass", "newElement:", "<<", "newStream", "assertBodyEndsWith:"]
  626. }),
  627. $globals.DOMiteTest);
  628. $core.addMethod(
  629. $core.method({
  630. selector: "testInsertString",
  631. protocol: "testing",
  632. fn: function (){
  633. var self=this,$self=this;
  634. var d;
  635. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  636. return $core.withContext(function($ctx1) {
  637. //>>excludeEnd("ctx");
  638. d=$recv($self._testedClass())._fromElement_($self["@fixtureDiv"]);
  639. $recv(d).__lt_lt("a-foo--in-a-bar");
  640. $self._assertBodyEndsWith_(">sentinela-foo--in-a-bar</div>");
  641. return self;
  642. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  643. }, function($ctx1) {$ctx1.fill(self,"testInsertString",{d:d},$globals.DOMiteTest)});
  644. //>>excludeEnd("ctx");
  645. },
  646. //>>excludeStart("ide", pragmas.excludeIdeData);
  647. args: [],
  648. source: "testInsertString\x0a\x09| d |\x0a\x09d := self testedClass fromElement: fixtureDiv.\x0a\x09d << 'a-foo--in-a-bar'.\x0a\x09self assertBodyEndsWith: '>sentinela-foo--in-a-bar</div>'",
  649. referencedClasses: [],
  650. //>>excludeEnd("ide");
  651. messageSends: ["fromElement:", "testedClass", "<<", "assertBodyEndsWith:"]
  652. }),
  653. $globals.DOMiteTest);
  654. $core.addMethod(
  655. $core.method({
  656. selector: "testInsertStringInFragment",
  657. protocol: "testing",
  658. fn: function (){
  659. var self=this,$self=this;
  660. var d;
  661. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  662. return $core.withContext(function($ctx1) {
  663. //>>excludeEnd("ctx");
  664. var $1;
  665. $1=$self._testedClass();
  666. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  667. $ctx1.sendIdx["testedClass"]=1;
  668. //>>excludeEnd("ctx");
  669. d=$recv($1)._at_("#fixture");
  670. $recv(d).__lt_lt($recv($recv($self._testedClass())._newStream()).__lt_lt("a-foo--in-a-bar"));
  671. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  672. $ctx1.sendIdx["<<"]=1;
  673. //>>excludeEnd("ctx");
  674. $self._assertBodyEndsWith_(">sentinela-foo--in-a-bar</div>");
  675. return self;
  676. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  677. }, function($ctx1) {$ctx1.fill(self,"testInsertStringInFragment",{d:d},$globals.DOMiteTest)});
  678. //>>excludeEnd("ctx");
  679. },
  680. //>>excludeStart("ide", pragmas.excludeIdeData);
  681. args: [],
  682. source: "testInsertStringInFragment\x0a\x09| d |\x0a\x09d := self testedClass at: '#fixture'.\x0a\x09d << (self testedClass newStream << 'a-foo--in-a-bar').\x0a\x09self assertBodyEndsWith: '>sentinela-foo--in-a-bar</div>'",
  683. referencedClasses: [],
  684. //>>excludeEnd("ide");
  685. messageSends: ["at:", "testedClass", "<<", "newStream", "assertBodyEndsWith:"]
  686. }),
  687. $globals.DOMiteTest);
  688. $core.addMethod(
  689. $core.method({
  690. selector: "testInsertStringifiedJSObject",
  691. protocol: "testing",
  692. fn: function (){
  693. var self=this,$self=this;
  694. var d,obj;
  695. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  696. return $core.withContext(function($ctx1) {
  697. //>>excludeEnd("ctx");
  698. var $1;
  699. d=$recv($self._testedClass())._fromElement_($self["@fixtureDiv"]);
  700. obj=$recv($globals.JSON)._parse_("{}");
  701. $recv(d).__lt_lt(obj);
  702. $1=$recv(">sentinel".__comma($recv(obj)._asString())).__comma("</div>");
  703. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  704. $ctx1.sendIdx[","]=1;
  705. //>>excludeEnd("ctx");
  706. $self._assertBodyEndsWith_($1);
  707. return self;
  708. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  709. }, function($ctx1) {$ctx1.fill(self,"testInsertStringifiedJSObject",{d:d,obj:obj},$globals.DOMiteTest)});
  710. //>>excludeEnd("ctx");
  711. },
  712. //>>excludeStart("ide", pragmas.excludeIdeData);
  713. args: [],
  714. source: "testInsertStringifiedJSObject\x0a\x09| d obj |\x0a\x09d := self testedClass fromElement: fixtureDiv.\x0a\x09obj := JSON parse: '{}'.\x0a\x09d << obj.\x0a\x09self assertBodyEndsWith: '>sentinel', obj asString, '</div>'",
  715. referencedClasses: ["JSON"],
  716. //>>excludeEnd("ide");
  717. messageSends: ["fromElement:", "testedClass", "parse:", "<<", "assertBodyEndsWith:", ",", "asString"]
  718. }),
  719. $globals.DOMiteTest);
  720. $core.addMethod(
  721. $core.method({
  722. selector: "testInsertStringifiedNumber",
  723. protocol: "testing",
  724. fn: function (){
  725. var self=this,$self=this;
  726. var d;
  727. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  728. return $core.withContext(function($ctx1) {
  729. //>>excludeEnd("ctx");
  730. d=$recv($self._testedClass())._fromElement_($self["@fixtureDiv"]);
  731. $recv(d).__lt_lt((42));
  732. $self._assertBodyEndsWith_(">sentinel42</div>");
  733. return self;
  734. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  735. }, function($ctx1) {$ctx1.fill(self,"testInsertStringifiedNumber",{d:d},$globals.DOMiteTest)});
  736. //>>excludeEnd("ctx");
  737. },
  738. //>>excludeStart("ide", pragmas.excludeIdeData);
  739. args: [],
  740. source: "testInsertStringifiedNumber\x0a\x09| d |\x0a\x09d := self testedClass fromElement: fixtureDiv.\x0a\x09d << 42.\x0a\x09self assertBodyEndsWith: '>sentinel42</div>'",
  741. referencedClasses: [],
  742. //>>excludeEnd("ide");
  743. messageSends: ["fromElement:", "testedClass", "<<", "assertBodyEndsWith:"]
  744. }),
  745. $globals.DOMiteTest);
  746. $core.addMethod(
  747. $core.method({
  748. selector: "testInsertTable",
  749. protocol: "testing",
  750. fn: function (){
  751. var self=this,$self=this;
  752. var d,tbl,tr;
  753. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  754. return $core.withContext(function($ctx1) {
  755. //>>excludeEnd("ctx");
  756. var $1,$2,$3,$4,$7,$6,$5,$8,$11,$10,$9,$12,$15,$14,$13,$16,$17,$20,$19,$18,$21,$24,$23,$22,$25,$26;
  757. $1=$self._testedClass();
  758. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  759. $ctx1.sendIdx["testedClass"]=1;
  760. //>>excludeEnd("ctx");
  761. d=$recv($1)._at_("html body div#fixture");
  762. $2=$self._testedClass();
  763. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  764. $ctx1.sendIdx["testedClass"]=2;
  765. //>>excludeEnd("ctx");
  766. tbl=$recv($2)._newElement_("table");
  767. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  768. $ctx1.sendIdx["newElement:"]=1;
  769. //>>excludeEnd("ctx");
  770. $3=$self._testedClass();
  771. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  772. $ctx1.sendIdx["testedClass"]=3;
  773. //>>excludeEnd("ctx");
  774. tr=$recv($3)._newElement_("tr");
  775. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  776. $ctx1.sendIdx["newElement:"]=2;
  777. //>>excludeEnd("ctx");
  778. $4=tr;
  779. $7=$self._testedClass();
  780. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  781. $ctx1.sendIdx["testedClass"]=4;
  782. //>>excludeEnd("ctx");
  783. $6=$recv($7)._newElement_("td");
  784. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  785. $ctx1.sendIdx["newElement:"]=3;
  786. //>>excludeEnd("ctx");
  787. $5=$recv($6).__lt_lt("A");
  788. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  789. $ctx1.sendIdx["<<"]=2;
  790. //>>excludeEnd("ctx");
  791. $recv($4).__lt_lt($5);
  792. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  793. $ctx1.sendIdx["<<"]=1;
  794. //>>excludeEnd("ctx");
  795. $8=tr;
  796. $11=$self._testedClass();
  797. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  798. $ctx1.sendIdx["testedClass"]=5;
  799. //>>excludeEnd("ctx");
  800. $10=$recv($11)._newElement_("td");
  801. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  802. $ctx1.sendIdx["newElement:"]=4;
  803. //>>excludeEnd("ctx");
  804. $9=$recv($10).__lt_lt("B");
  805. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  806. $ctx1.sendIdx["<<"]=4;
  807. //>>excludeEnd("ctx");
  808. $recv($8).__lt_lt($9);
  809. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  810. $ctx1.sendIdx["<<"]=3;
  811. //>>excludeEnd("ctx");
  812. $12=tr;
  813. $15=$self._testedClass();
  814. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  815. $ctx1.sendIdx["testedClass"]=6;
  816. //>>excludeEnd("ctx");
  817. $14=$recv($15)._newElement_("td");
  818. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  819. $ctx1.sendIdx["newElement:"]=5;
  820. //>>excludeEnd("ctx");
  821. $13=$recv($14).__lt_lt("C");
  822. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  823. $ctx1.sendIdx["<<"]=6;
  824. //>>excludeEnd("ctx");
  825. $recv($12).__lt_lt($13);
  826. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  827. $ctx1.sendIdx["<<"]=5;
  828. //>>excludeEnd("ctx");
  829. $recv(tbl).__lt_lt(tr);
  830. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  831. $ctx1.sendIdx["<<"]=7;
  832. //>>excludeEnd("ctx");
  833. $16=$self._testedClass();
  834. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  835. $ctx1.sendIdx["testedClass"]=7;
  836. //>>excludeEnd("ctx");
  837. tr=$recv($16)._newElement_("tr");
  838. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  839. $ctx1.sendIdx["newElement:"]=6;
  840. //>>excludeEnd("ctx");
  841. $17=tr;
  842. $20=$self._testedClass();
  843. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  844. $ctx1.sendIdx["testedClass"]=8;
  845. //>>excludeEnd("ctx");
  846. $19=$recv($20)._newElement_("td");
  847. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  848. $ctx1.sendIdx["newElement:"]=7;
  849. //>>excludeEnd("ctx");
  850. $18=$recv($19).__lt_lt("D");
  851. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  852. $ctx1.sendIdx["<<"]=9;
  853. //>>excludeEnd("ctx");
  854. $recv($17).__lt_lt($18);
  855. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  856. $ctx1.sendIdx["<<"]=8;
  857. //>>excludeEnd("ctx");
  858. $21=tr;
  859. $24=$self._testedClass();
  860. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  861. $ctx1.sendIdx["testedClass"]=9;
  862. //>>excludeEnd("ctx");
  863. $23=$recv($24)._newElement_("td");
  864. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  865. $ctx1.sendIdx["newElement:"]=8;
  866. //>>excludeEnd("ctx");
  867. $22=$recv($23).__lt_lt("E");
  868. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  869. $ctx1.sendIdx["<<"]=11;
  870. //>>excludeEnd("ctx");
  871. $recv($21).__lt_lt($22);
  872. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  873. $ctx1.sendIdx["<<"]=10;
  874. //>>excludeEnd("ctx");
  875. $25=tr;
  876. $26=$recv($recv($self._testedClass())._newElement_("td")).__lt_lt("F");
  877. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  878. $ctx1.sendIdx["<<"]=13;
  879. //>>excludeEnd("ctx");
  880. $recv($25).__lt_lt($26);
  881. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  882. $ctx1.sendIdx["<<"]=12;
  883. //>>excludeEnd("ctx");
  884. $recv(tbl).__lt_lt(tr);
  885. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  886. $ctx1.sendIdx["<<"]=14;
  887. //>>excludeEnd("ctx");
  888. $recv(d).__lt_lt(tbl);
  889. $self._assertBodyEndsWith_(">sentinel<table><tr><td>A</td><td>B</td><td>C</td></tr><tr><td>D</td><td>E</td><td>F</td></tr></table></div>");
  890. return self;
  891. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  892. }, function($ctx1) {$ctx1.fill(self,"testInsertTable",{d:d,tbl:tbl,tr:tr},$globals.DOMiteTest)});
  893. //>>excludeEnd("ctx");
  894. },
  895. //>>excludeStart("ide", pragmas.excludeIdeData);
  896. args: [],
  897. source: "testInsertTable\x0a\x09| d tbl tr |\x0a\x09d := self testedClass at: 'html body div#fixture'.\x0a\x09tbl := self testedClass newElement: 'table'.\x0a\x09\x0a\x09tr := self testedClass newElement: 'tr'.\x0a\x09tr << ((self testedClass newElement: 'td') << 'A').\x0a\x09tr << ((self testedClass newElement: 'td') << 'B').\x0a\x09tr << ((self testedClass newElement: 'td') << 'C').\x0a\x09\x0a\x09tbl << tr.\x0a\x09\x0a\x09tr := self testedClass newElement: 'tr'.\x0a\x09tr << ((self testedClass newElement: 'td') << 'D').\x0a\x09tr << ((self testedClass newElement: 'td') << 'E').\x0a\x09tr << ((self testedClass newElement: 'td') << 'F').\x0a\x09\x0a\x09tbl << tr.\x0a\x09d << tbl.\x0a\x09 \x0a\x09self assertBodyEndsWith: '>sentinel<table><tr><td>A</td><td>B</td><td>C</td></tr><tr><td>D</td><td>E</td><td>F</td></tr></table></div>'",
  898. referencedClasses: [],
  899. //>>excludeEnd("ide");
  900. messageSends: ["at:", "testedClass", "newElement:", "<<", "assertBodyEndsWith:"]
  901. }),
  902. $globals.DOMiteTest);
  903. $core.addMethod(
  904. $core.method({
  905. selector: "testMultipleInserts",
  906. protocol: "testing",
  907. fn: function (){
  908. var self=this,$self=this;
  909. var d,p,s;
  910. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  911. return $core.withContext(function($ctx1) {
  912. //>>excludeEnd("ctx");
  913. var $1,$2;
  914. $1=$self._testedClass();
  915. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  916. $ctx1.sendIdx["testedClass"]=1;
  917. //>>excludeEnd("ctx");
  918. d=$recv($1)._fromElement_($self["@fixtureDiv"]);
  919. $2=$self._testedClass();
  920. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  921. $ctx1.sendIdx["testedClass"]=2;
  922. //>>excludeEnd("ctx");
  923. p=$recv($2)._newElement_("p");
  924. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  925. $ctx1.sendIdx["newElement:"]=1;
  926. //>>excludeEnd("ctx");
  927. $recv(d).__lt_lt(p);
  928. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  929. $ctx1.sendIdx["<<"]=1;
  930. //>>excludeEnd("ctx");
  931. s=$recv($self._testedClass())._newElement_("span");
  932. $recv(d).__lt_lt(s);
  933. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  934. $ctx1.sendIdx["<<"]=2;
  935. //>>excludeEnd("ctx");
  936. $recv(d).__lt_lt("dom-mite");
  937. $self._assertBodyEndsWith_(">sentinel<p></p><span></span>dom-mite</div>");
  938. return self;
  939. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  940. }, function($ctx1) {$ctx1.fill(self,"testMultipleInserts",{d:d,p:p,s:s},$globals.DOMiteTest)});
  941. //>>excludeEnd("ctx");
  942. },
  943. //>>excludeStart("ide", pragmas.excludeIdeData);
  944. args: [],
  945. source: "testMultipleInserts\x0a\x09| d p s |\x0a\x09d := self testedClass fromElement: fixtureDiv.\x0a\x09p := self testedClass newElement: 'p'.\x0a\x09d << p.\x0a\x09s := self testedClass newElement: 'span'.\x0a\x09d << s.\x0a\x09d << 'dom-mite'.\x0a\x09self assertBodyEndsWith: '>sentinel<p></p><span></span>dom-mite</div>'",
  946. referencedClasses: [],
  947. //>>excludeEnd("ide");
  948. messageSends: ["fromElement:", "testedClass", "newElement:", "<<", "assertBodyEndsWith:"]
  949. }),
  950. $globals.DOMiteTest);
  951. $core.addMethod(
  952. $core.method({
  953. selector: "testMultipleInsertsWithClear",
  954. protocol: "testing",
  955. fn: function (){
  956. var self=this,$self=this;
  957. var d,p,s;
  958. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  959. return $core.withContext(function($ctx1) {
  960. //>>excludeEnd("ctx");
  961. var $1,$2;
  962. $1=$self._testedClass();
  963. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  964. $ctx1.sendIdx["testedClass"]=1;
  965. //>>excludeEnd("ctx");
  966. d=$recv($1)._at_("#fixture");
  967. $2=$self._testedClass();
  968. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  969. $ctx1.sendIdx["testedClass"]=2;
  970. //>>excludeEnd("ctx");
  971. p=$recv($2)._newElement_("p");
  972. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  973. $ctx1.sendIdx["newElement:"]=1;
  974. //>>excludeEnd("ctx");
  975. $recv(d).__lt_lt(p);
  976. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  977. $ctx1.sendIdx["<<"]=1;
  978. //>>excludeEnd("ctx");
  979. s=$recv($self._testedClass())._newElement_("span");
  980. $recv(d).__lt_lt(s);
  981. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  982. $ctx1.sendIdx["<<"]=2;
  983. //>>excludeEnd("ctx");
  984. $recv(d)._resetContents();
  985. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  986. $ctx1.sendIdx["resetContents"]=1;
  987. //>>excludeEnd("ctx");
  988. $recv(d).__lt_lt("dom-mite");
  989. $recv(d)._resetContents();
  990. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  991. $ctx1.sendIdx["resetContents"]=2;
  992. //>>excludeEnd("ctx");
  993. $recv(d)._resetContents();
  994. $self._assertBodyEndsWith_("></div>");
  995. return self;
  996. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  997. }, function($ctx1) {$ctx1.fill(self,"testMultipleInsertsWithClear",{d:d,p:p,s:s},$globals.DOMiteTest)});
  998. //>>excludeEnd("ctx");
  999. },
  1000. //>>excludeStart("ide", pragmas.excludeIdeData);
  1001. args: [],
  1002. source: "testMultipleInsertsWithClear\x0a\x09| d p s |\x0a\x09d := self testedClass at: '#fixture'.\x0a\x09p := self testedClass newElement: 'p'.\x0a\x09d << p.\x0a\x09s := self testedClass newElement: 'span'.\x0a\x09d << s.\x0a\x09d resetContents.\x0a\x09d << 'dom-mite'.\x0a\x09d resetContents.\x0a\x09d resetContents.\x0a\x09self assertBodyEndsWith: '></div>'",
  1003. referencedClasses: [],
  1004. //>>excludeEnd("ide");
  1005. messageSends: ["at:", "testedClass", "newElement:", "<<", "resetContents", "assertBodyEndsWith:"]
  1006. }),
  1007. $globals.DOMiteTest);
  1008. $core.addMethod(
  1009. $core.method({
  1010. selector: "testMultipleInsertsWithClearInBetween",
  1011. protocol: "testing",
  1012. fn: function (){
  1013. var self=this,$self=this;
  1014. var d,p,s;
  1015. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  1016. return $core.withContext(function($ctx1) {
  1017. //>>excludeEnd("ctx");
  1018. var $1,$2;
  1019. $1=$self._testedClass();
  1020. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  1021. $ctx1.sendIdx["testedClass"]=1;
  1022. //>>excludeEnd("ctx");
  1023. d=$recv($1)._fromElement_($self["@fixtureDiv"]);
  1024. $2=$self._testedClass();
  1025. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  1026. $ctx1.sendIdx["testedClass"]=2;
  1027. //>>excludeEnd("ctx");
  1028. p=$recv($2)._newElement_("p");
  1029. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  1030. $ctx1.sendIdx["newElement:"]=1;
  1031. //>>excludeEnd("ctx");
  1032. $recv(d).__lt_lt(p);
  1033. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  1034. $ctx1.sendIdx["<<"]=1;
  1035. //>>excludeEnd("ctx");
  1036. s=$recv($self._testedClass())._newElement_("span");
  1037. $recv(d).__lt_lt(s);
  1038. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  1039. $ctx1.sendIdx["<<"]=2;
  1040. //>>excludeEnd("ctx");
  1041. $recv(d)._resetContents();
  1042. $recv(d).__lt_lt("dom-mite");
  1043. $self._assertBodyEndsWith_(">dom-mite</div>");
  1044. return self;
  1045. //>>excludeStart("ctx", pragmas.excludeDebugContexts);
  1046. }, function($ctx1) {$ctx1.fill(self,"testMultipleInsertsWithClearInBetween",{d:d,p:p,s:s},$globals.DOMiteTest)});
  1047. //>>excludeEnd("ctx");
  1048. },
  1049. //>>excludeStart("ide", pragmas.excludeIdeData);
  1050. args: [],
  1051. source: "testMultipleInsertsWithClearInBetween\x0a\x09| d p s |\x0a\x09d := self testedClass fromElement: fixtureDiv.\x0a\x09p := self testedClass newElement: 'p'.\x0a\x09d << p.\x0a\x09s := self testedClass newElement: 'span'.\x0a\x09d << s.\x0a\x09d resetContents.\x0a\x09d << 'dom-mite'.\x0a\x09self assertBodyEndsWith: '>dom-mite</div>'",
  1052. referencedClasses: [],
  1053. //>>excludeEnd("ide");
  1054. messageSends: ["fromElement:", "testedClass", "newElement:", "<<", "resetContents", "assertBodyEndsWith:"]
  1055. }),
  1056. $globals.DOMiteTest);
  1057. $core.addMethod(
  1058. $core.method({
  1059. selector: "testedClass",
  1060. protocol: "fixture",
  1061. fn: function (){
  1062. var self=this,$self=this;
  1063. return $globals.Domite;
  1064. },
  1065. //>>excludeStart("ide", pragmas.excludeIdeData);
  1066. args: [],
  1067. source: "testedClass\x0a\x0a\x09^ Domite",
  1068. referencedClasses: ["Domite"],
  1069. //>>excludeEnd("ide");
  1070. messageSends: []
  1071. }),
  1072. $globals.DOMiteTest);
  1073. });