Browse Source

Tests sanitized possible whitespace problems.

Herbert Vojčík 9 years ago
parent
commit
b623854a67
2 changed files with 109 additions and 95 deletions
  1. 84 76
      src/DOMite-Tests.js
  2. 25 19
      src/DOMite-Tests.st

+ 84 - 76
src/DOMite-Tests.js

@@ -5,6 +5,32 @@ $core.packages["DOMite-Tests"].innerEval = function (expr) { return eval(expr);
 $core.packages["DOMite-Tests"].transport = {"type":"amd","amdNamespace":"domite"};
 
 $core.addClass('DOMiteTest', $globals.TestCase, ['fixtureDiv'], 'DOMite-Tests');
+$core.addMethod(
+$core.method({
+selector: "assertBodyEndsWith:",
+protocol: 'testing',
+fn: function (aString){
+var self=this;
+var sanitizedBody;
+//>>excludeStart("ctx", pragmas.excludeDebugContexts);
+return $core.withContext(function($ctx1) {
+//>>excludeEnd("ctx");
+sanitizedBody=$recv($recv($recv(document)._body())._innerHTML())._replace_with_("\x5cs*","");
+self._assert_($recv(sanitizedBody)._endsWith_(aString));
+return self;
+//>>excludeStart("ctx", pragmas.excludeDebugContexts);
+}, function($ctx1) {$ctx1.fill(self,"assertBodyEndsWith:",{aString:aString,sanitizedBody:sanitizedBody},$globals.DOMiteTest)});
+//>>excludeEnd("ctx");
+},
+//>>excludeStart("ide", pragmas.excludeIdeData);
+args: ["aString"],
+source: "assertBodyEndsWith: aString\x0a\x09| sanitizedBody |\x0a\x09sanitizedBody := document body innerHTML replace: '\x5cs*' with: ''.\x0a\x09self assert: (sanitizedBody endsWith: aString)",
+referencedClasses: [],
+//>>excludeEnd("ide");
+messageSends: ["replace:with:", "innerHTML", "body", "assert:", "endsWith:"]
+}),
+$globals.DOMiteTest);
+
 $core.addMethod(
 $core.method({
 selector: "setUp",
@@ -73,25 +99,19 @@ var self=this;
 //>>excludeStart("ctx", pragmas.excludeDebugContexts);
 return $core.withContext(function($ctx1) {
 //>>excludeEnd("ctx");
-var $2,$1,$5,$4,$3,$6;
+var $2,$1,$3;
 $2=self._testedClass();
 //>>excludeStart("ctx", pragmas.excludeDebugContexts);
 $ctx1.sendIdx["testedClass"]=1;
 //>>excludeEnd("ctx");
 $1=$recv($2)._new();
 $recv($1).__lt_lt($recv(self._testedClass())._newElement_("p"));
-$5=$recv(document)._body();
+self._assertBodyEndsWith_("<p></p>");
+$3=$recv(document)._body();
 //>>excludeStart("ctx", pragmas.excludeDebugContexts);
 $ctx1.sendIdx["body"]=1;
 //>>excludeEnd("ctx");
-$4=$recv($5)._innerHTML();
-$3=$recv($4)._endsWith_("<p></p>");
-self._assert_($3);
-$6=$recv(document)._body();
-//>>excludeStart("ctx", pragmas.excludeDebugContexts);
-$ctx1.sendIdx["body"]=2;
-//>>excludeEnd("ctx");
-$recv($6)._removeChild_($recv($recv(document)._body())._lastChild());
+$recv($3)._removeChild_($recv($recv(document)._body())._lastChild());
 return self;
 //>>excludeStart("ctx", pragmas.excludeDebugContexts);
 }, function($ctx1) {$ctx1.fill(self,"testDefaultInsertElement",{},$globals.DOMiteTest)});
@@ -99,10 +119,10 @@ return self;
 },
 //>>excludeStart("ide", pragmas.excludeIdeData);
 args: [],
-source: "testDefaultInsertElement\x0a\x0a\x09self testedClass new << (self testedClass newElement: 'p').\x0a\x09self assert: (document body innerHTML endsWith: '<p></p>').\x0a\x09document body removeChild: document body lastChild",
+source: "testDefaultInsertElement\x0a\x0a\x09self testedClass new << (self testedClass newElement: 'p').\x0a\x09self assertBodyEndsWith: '<p></p>'.\x0a\x09document body removeChild: document body lastChild",
 referencedClasses: [],
 //>>excludeEnd("ide");
-messageSends: ["<<", "new", "testedClass", "newElement:", "assert:", "endsWith:", "innerHTML", "body", "removeChild:", "lastChild"]
+messageSends: ["<<", "new", "testedClass", "newElement:", "assertBodyEndsWith:", "removeChild:", "body", "lastChild"]
 }),
 $globals.DOMiteTest);
 
@@ -115,20 +135,14 @@ var self=this;
 //>>excludeStart("ctx", pragmas.excludeDebugContexts);
 return $core.withContext(function($ctx1) {
 //>>excludeEnd("ctx");
-var $3,$2,$1,$4;
-$recv($recv(self._testedClass())._new()).__lt_lt("a foo in a bar");
-$3=$recv(document)._body();
+var $1;
+$recv($recv(self._testedClass())._new()).__lt_lt("a-foo--in-a-bar");
+self._assertBodyEndsWith_("a-foo--in-a-bar");
+$1=$recv(document)._body();
 //>>excludeStart("ctx", pragmas.excludeDebugContexts);
 $ctx1.sendIdx["body"]=1;
 //>>excludeEnd("ctx");
-$2=$recv($3)._innerHTML();
-$1=$recv($2)._endsWith_("a foo in a bar");
-self._assert_($1);
-$4=$recv(document)._body();
-//>>excludeStart("ctx", pragmas.excludeDebugContexts);
-$ctx1.sendIdx["body"]=2;
-//>>excludeEnd("ctx");
-$recv($4)._removeChild_($recv($recv(document)._body())._lastChild());
+$recv($1)._removeChild_($recv($recv(document)._body())._lastChild());
 return self;
 //>>excludeStart("ctx", pragmas.excludeDebugContexts);
 }, function($ctx1) {$ctx1.fill(self,"testDefaultInsertString",{},$globals.DOMiteTest)});
@@ -136,10 +150,10 @@ return self;
 },
 //>>excludeStart("ide", pragmas.excludeIdeData);
 args: [],
-source: "testDefaultInsertString\x0a\x09self testedClass new << 'a foo in a bar'.\x0a\x09self assert: (document body innerHTML endsWith: 'a foo in a bar').\x0a\x09document body removeChild: document body lastChild",
+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",
 referencedClasses: [],
 //>>excludeEnd("ide");
-messageSends: ["<<", "new", "testedClass", "assert:", "endsWith:", "innerHTML", "body", "removeChild:", "lastChild"]
+messageSends: ["<<", "new", "testedClass", "assertBodyEndsWith:", "removeChild:", "body", "lastChild"]
 }),
 $globals.DOMiteTest);
 
@@ -152,28 +166,22 @@ var self=this;
 //>>excludeStart("ctx", pragmas.excludeDebugContexts);
 return $core.withContext(function($ctx1) {
 //>>excludeEnd("ctx");
-var $2,$1,$5,$4,$3,$6;
+var $2,$1,$3;
 $2=self._testedClass();
 //>>excludeStart("ctx", pragmas.excludeDebugContexts);
 $ctx1.sendIdx["testedClass"]=1;
 //>>excludeEnd("ctx");
 $1=$recv($2)._new();
-$recv($1).__lt_lt($recv($recv(self._testedClass())._newStream()).__lt_lt("a foo in a bar"));
+$recv($1).__lt_lt($recv($recv(self._testedClass())._newStream()).__lt_lt("a-foo--in-a-bar"));
 //>>excludeStart("ctx", pragmas.excludeDebugContexts);
 $ctx1.sendIdx["<<"]=1;
 //>>excludeEnd("ctx");
-$5=$recv(document)._body();
+self._assertBodyEndsWith_("a-foo--in-a-bar");
+$3=$recv(document)._body();
 //>>excludeStart("ctx", pragmas.excludeDebugContexts);
 $ctx1.sendIdx["body"]=1;
 //>>excludeEnd("ctx");
-$4=$recv($5)._innerHTML();
-$3=$recv($4)._endsWith_("a foo in a bar");
-self._assert_($3);
-$6=$recv(document)._body();
-//>>excludeStart("ctx", pragmas.excludeDebugContexts);
-$ctx1.sendIdx["body"]=2;
-//>>excludeEnd("ctx");
-$recv($6)._removeChild_($recv($recv(document)._body())._lastChild());
+$recv($3)._removeChild_($recv($recv(document)._body())._lastChild());
 return self;
 //>>excludeStart("ctx", pragmas.excludeDebugContexts);
 }, function($ctx1) {$ctx1.fill(self,"testDefaultInsertStringInFragment",{},$globals.DOMiteTest)});
@@ -181,10 +189,10 @@ return self;
 },
 //>>excludeStart("ide", pragmas.excludeIdeData);
 args: [],
-source: "testDefaultInsertStringInFragment\x0a\x09self testedClass new << (self testedClass newStream << 'a foo in a bar').\x0a\x09self assert: (document body innerHTML endsWith: 'a foo in a bar').\x0a\x09document body removeChild: document body lastChild",
+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",
 referencedClasses: [],
 //>>excludeEnd("ide");
-messageSends: ["<<", "new", "testedClass", "newStream", "assert:", "endsWith:", "innerHTML", "body", "removeChild:", "lastChild"]
+messageSends: ["<<", "new", "testedClass", "newStream", "assertBodyEndsWith:", "removeChild:", "body", "lastChild"]
 }),
 $globals.DOMiteTest);
 
@@ -256,7 +264,7 @@ return $core.withContext(function($ctx1) {
 //>>excludeEnd("ctx");
 d=$recv(self._testedClass())._fromElement_(self["@fixtureDiv"]);
 $recv(d).__lt_lt($recv(document)._createElement_("pre"));
-self._assert_($recv($recv($recv(document)._body())._innerHTML())._endsWith_(">sentinel<pre></pre></div>"));
+self._assertBodyEndsWith_(">sentinel<pre></pre></div>");
 return self;
 //>>excludeStart("ctx", pragmas.excludeDebugContexts);
 }, function($ctx1) {$ctx1.fill(self,"testInsertDomNode",{d:d},$globals.DOMiteTest)});
@@ -264,10 +272,10 @@ return self;
 },
 //>>excludeStart("ide", pragmas.excludeIdeData);
 args: [],
-source: "testInsertDomNode\x0a\x09| d |\x0a\x09d := self testedClass fromElement: fixtureDiv.\x0a\x09d << (document createElement: 'pre').\x0a\x09self assert: (document body innerHTML endsWith: '>sentinel<pre></pre></div>')",
+source: "testInsertDomNode\x0a\x09| d |\x0a\x09d := self testedClass fromElement: fixtureDiv.\x0a\x09d << (document createElement: 'pre').\x0a\x09self assertBodyEndsWith: '>sentinel<pre></pre></div>'",
 referencedClasses: [],
 //>>excludeEnd("ide");
-messageSends: ["fromElement:", "testedClass", "<<", "createElement:", "assert:", "endsWith:", "innerHTML", "body"]
+messageSends: ["fromElement:", "testedClass", "<<", "createElement:", "assertBodyEndsWith:"]
 }),
 $globals.DOMiteTest);
 
@@ -291,7 +299,7 @@ $recv(d).__lt_lt($recv($recv(self._testedClass())._newStream()).__lt_lt($recv(do
 //>>excludeStart("ctx", pragmas.excludeDebugContexts);
 $ctx1.sendIdx["<<"]=1;
 //>>excludeEnd("ctx");
-self._assert_($recv($recv($recv(document)._body())._innerHTML())._endsWith_(">sentinel<script></script></div>"));
+self._assertBodyEndsWith_(">sentinel<script></script></div>");
 return self;
 //>>excludeStart("ctx", pragmas.excludeDebugContexts);
 }, function($ctx1) {$ctx1.fill(self,"testInsertDomNodeInFragment",{d:d},$globals.DOMiteTest)});
@@ -299,10 +307,10 @@ return self;
 },
 //>>excludeStart("ide", pragmas.excludeIdeData);
 args: [],
-source: "testInsertDomNodeInFragment\x0a\x09| d |\x0a\x09d := self testedClass at: '#fixture'.\x0a\x09d << (self testedClass newStream << (document createElement: 'script')).\x0a\x09self assert: (document body innerHTML endsWith: '>sentinel<script></script></div>')",
+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>'",
 referencedClasses: [],
 //>>excludeEnd("ide");
-messageSends: ["at:", "testedClass", "<<", "newStream", "createElement:", "assert:", "endsWith:", "innerHTML", "body"]
+messageSends: ["at:", "testedClass", "<<", "newStream", "createElement:", "assertBodyEndsWith:"]
 }),
 $globals.DOMiteTest);
 
@@ -323,7 +331,7 @@ $ctx1.sendIdx["testedClass"]=1;
 //>>excludeEnd("ctx");
 d=$recv($1)._at_("html body div#fixture");
 $recv(d).__lt_lt($recv(self._testedClass())._newElement_("p"));
-self._assert_($recv($recv($recv(document)._body())._innerHTML())._endsWith_(">sentinel<p></p></div>"));
+self._assertBodyEndsWith_(">sentinel<p></p></div>");
 return self;
 //>>excludeStart("ctx", pragmas.excludeDebugContexts);
 }, function($ctx1) {$ctx1.fill(self,"testInsertElement",{d:d},$globals.DOMiteTest)});
@@ -331,10 +339,10 @@ return self;
 },
 //>>excludeStart("ide", pragmas.excludeIdeData);
 args: [],
-source: "testInsertElement\x0a\x09| d |\x0a\x09d := self testedClass at: 'html body div#fixture'.\x0a\x09d << (self testedClass newElement: 'p').\x0a\x09self assert: (document body innerHTML endsWith: '>sentinel<p></p></div>')",
+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>'",
 referencedClasses: [],
 //>>excludeEnd("ide");
-messageSends: ["at:", "testedClass", "<<", "newElement:", "assert:", "endsWith:", "innerHTML", "body"]
+messageSends: ["at:", "testedClass", "<<", "newElement:", "assertBodyEndsWith:"]
 }),
 $globals.DOMiteTest);
 
@@ -372,7 +380,7 @@ $recv(p).__lt_lt(s);
 $ctx1.sendIdx["<<"]=2;
 //>>excludeEnd("ctx");
 $recv(s).__lt_lt("dom-mite");
-self._assert_($recv($recv($recv(document)._body())._innerHTML())._endsWith_(">sentinel<p><span>dom-mite</span></p></div>"));
+self._assertBodyEndsWith_(">sentinel<p><span>dom-mite</span></p></div>");
 return self;
 //>>excludeStart("ctx", pragmas.excludeDebugContexts);
 }, function($ctx1) {$ctx1.fill(self,"testInsertElementTwoLevel",{d:d,p:p,s:s},$globals.DOMiteTest)});
@@ -380,10 +388,10 @@ return self;
 },
 //>>excludeStart("ide", pragmas.excludeIdeData);
 args: [],
-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 assert: (document body innerHTML endsWith: '>sentinel<p><span>dom-mite</span></p></div>')",
+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>'",
 referencedClasses: [],
 //>>excludeEnd("ide");
-messageSends: ["fromElement:", "testedClass", "newElement:", "<<", "assert:", "endsWith:", "innerHTML", "body"]
+messageSends: ["fromElement:", "testedClass", "newElement:", "<<", "assertBodyEndsWith:"]
 }),
 $globals.DOMiteTest);
 
@@ -454,7 +462,7 @@ $recv(s).__lt_lt($recv($recv(self._testedClass())._newStream()).__lt_lt("dom-mit
 //>>excludeStart("ctx", pragmas.excludeDebugContexts);
 $ctx1.sendIdx["<<"]=5;
 //>>excludeEnd("ctx");
-self._assert_($recv($recv($recv(document)._body())._innerHTML())._endsWith_(">sentinel<p><span>dom-mite</span></p></div>"));
+self._assertBodyEndsWith_(">sentinel<p><span>dom-mite</span></p></div>");
 return self;
 //>>excludeStart("ctx", pragmas.excludeDebugContexts);
 }, function($ctx1) {$ctx1.fill(self,"testInsertElementTwoLevelViaFragments",{d:d,p:p,s:s},$globals.DOMiteTest)});
@@ -462,10 +470,10 @@ return self;
 },
 //>>excludeStart("ide", pragmas.excludeIdeData);
 args: [],
-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 assert: (document body innerHTML endsWith: '>sentinel<p><span>dom-mite</span></p></div>')",
+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>'",
 referencedClasses: [],
 //>>excludeEnd("ide");
-messageSends: ["at:", "testedClass", "newElement:", "<<", "newStream", "assert:", "endsWith:", "innerHTML", "body"]
+messageSends: ["at:", "testedClass", "newElement:", "<<", "newStream", "assertBodyEndsWith:"]
 }),
 $globals.DOMiteTest);
 
@@ -573,7 +581,7 @@ $recv($18).__lt_lt($19);
 //>>excludeStart("ctx", pragmas.excludeDebugContexts);
 $ctx1.sendIdx["<<"]=7;
 //>>excludeEnd("ctx");
-self._assert_($recv($recv($recv(document)._body())._innerHTML())._endsWith_(">sentinel<p><span>dom-mite</span></p></div>"));
+self._assertBodyEndsWith_(">sentinel<p><span>dom-mite</span></p></div>");
 return self;
 //>>excludeStart("ctx", pragmas.excludeDebugContexts);
 }, function($ctx1) {$ctx1.fill(self,"testInsertElementTwoLevelViaTwoLevelFragments",{d:d,p:p,s:s},$globals.DOMiteTest)});
@@ -581,10 +589,10 @@ return self;
 },
 //>>excludeStart("ide", pragmas.excludeIdeData);
 args: [],
-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 assert: (document body innerHTML endsWith: '>sentinel<p><span>dom-mite</span></p></div>')",
+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>'",
 referencedClasses: [],
 //>>excludeEnd("ide");
-messageSends: ["fromElement:", "testedClass", "newElement:", "<<", "newStream", "assert:", "endsWith:", "innerHTML", "body"]
+messageSends: ["fromElement:", "testedClass", "newElement:", "<<", "newStream", "assertBodyEndsWith:"]
 }),
 $globals.DOMiteTest);
 
@@ -599,8 +607,8 @@ var d;
 return $core.withContext(function($ctx1) {
 //>>excludeEnd("ctx");
 d=$recv(self._testedClass())._fromElement_(self["@fixtureDiv"]);
-$recv(d).__lt_lt("a foo in a bar");
-self._assert_($recv($recv($recv(document)._body())._innerHTML())._endsWith_(">sentinela foo in a bar</div>"));
+$recv(d).__lt_lt("a-foo--in-a-bar");
+self._assertBodyEndsWith_(">sentinela-foo--in-a-bar</div>");
 return self;
 //>>excludeStart("ctx", pragmas.excludeDebugContexts);
 }, function($ctx1) {$ctx1.fill(self,"testInsertString",{d:d},$globals.DOMiteTest)});
@@ -608,10 +616,10 @@ return self;
 },
 //>>excludeStart("ide", pragmas.excludeIdeData);
 args: [],
-source: "testInsertString\x0a\x09| d |\x0a\x09d := self testedClass fromElement: fixtureDiv.\x0a\x09d << 'a foo in a bar'.\x0a\x09self assert: (document body innerHTML endsWith: '>sentinela foo in a bar</div>')",
+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>'",
 referencedClasses: [],
 //>>excludeEnd("ide");
-messageSends: ["fromElement:", "testedClass", "<<", "assert:", "endsWith:", "innerHTML", "body"]
+messageSends: ["fromElement:", "testedClass", "<<", "assertBodyEndsWith:"]
 }),
 $globals.DOMiteTest);
 
@@ -631,11 +639,11 @@ $1=self._testedClass();
 $ctx1.sendIdx["testedClass"]=1;
 //>>excludeEnd("ctx");
 d=$recv($1)._at_("#fixture");
-$recv(d).__lt_lt($recv($recv(self._testedClass())._newStream()).__lt_lt("a foo in a bar"));
+$recv(d).__lt_lt($recv($recv(self._testedClass())._newStream()).__lt_lt("a-foo--in-a-bar"));
 //>>excludeStart("ctx", pragmas.excludeDebugContexts);
 $ctx1.sendIdx["<<"]=1;
 //>>excludeEnd("ctx");
-self._assert_($recv($recv($recv(document)._body())._innerHTML())._endsWith_(">sentinela foo in a bar</div>"));
+self._assertBodyEndsWith_(">sentinela-foo--in-a-bar</div>");
 return self;
 //>>excludeStart("ctx", pragmas.excludeDebugContexts);
 }, function($ctx1) {$ctx1.fill(self,"testInsertStringInFragment",{d:d},$globals.DOMiteTest)});
@@ -643,10 +651,10 @@ return self;
 },
 //>>excludeStart("ide", pragmas.excludeIdeData);
 args: [],
-source: "testInsertStringInFragment\x0a\x09| d |\x0a\x09d := self testedClass at: '#fixture'.\x0a\x09d << (self testedClass newStream << 'a foo in a bar').\x0a\x09self assert: (document body innerHTML endsWith: '>sentinela foo in a bar</div>')",
+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>'",
 referencedClasses: [],
 //>>excludeEnd("ide");
-messageSends: ["at:", "testedClass", "<<", "newStream", "assert:", "endsWith:", "innerHTML", "body"]
+messageSends: ["at:", "testedClass", "<<", "newStream", "assertBodyEndsWith:"]
 }),
 $globals.DOMiteTest);
 
@@ -778,7 +786,7 @@ $recv(tbl).__lt_lt(tr);
 $ctx1.sendIdx["<<"]=14;
 //>>excludeEnd("ctx");
 $recv(d).__lt_lt(tbl);
-self._assert_($recv($recv($recv(document)._body())._innerHTML())._endsWith_("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>"));
+self._assertBodyEndsWith_("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>");
 return self;
 //>>excludeStart("ctx", pragmas.excludeDebugContexts);
 }, function($ctx1) {$ctx1.fill(self,"testInsertTable",{d:d,tbl:tbl,tr:tr},$globals.DOMiteTest)});
@@ -786,10 +794,10 @@ return self;
 },
 //>>excludeStart("ide", pragmas.excludeIdeData);
 args: [],
-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 := Domite newElement: 'tr'.\x0a\x09tr << ((Domite newElement: 'td') << 'D').\x0a\x09tr << ((Domite newElement: 'td') << 'E').\x0a\x09tr << ((Domite newElement: 'td') << 'F').\x0a\x09\x0a\x09tbl << tr.\x0a\x09d << tbl.\x0a\x09 \x0a\x09self assert: (document body innerHTML endsWith: '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>')",
+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 := Domite newElement: 'tr'.\x0a\x09tr << ((Domite newElement: 'td') << 'D').\x0a\x09tr << ((Domite newElement: 'td') << 'E').\x0a\x09tr << ((Domite newElement: 'td') << 'F').\x0a\x09\x0a\x09tbl << tr.\x0a\x09d << tbl.\x0a\x09 \x0a\x09self assertBodyEndsWith: '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>'",
 referencedClasses: ["Domite"],
 //>>excludeEnd("ide");
-messageSends: ["at:", "testedClass", "newElement:", "<<", "assert:", "endsWith:", "innerHTML", "body"]
+messageSends: ["at:", "testedClass", "newElement:", "<<", "assertBodyEndsWith:"]
 }),
 $globals.DOMiteTest);
 
@@ -827,7 +835,7 @@ $recv(d).__lt_lt(s);
 $ctx1.sendIdx["<<"]=2;
 //>>excludeEnd("ctx");
 $recv(d).__lt_lt("dom-mite");
-self._assert_($recv($recv($recv(document)._body())._innerHTML())._endsWith_(">sentinel<p></p><span></span>dom-mite</div>"));
+self._assertBodyEndsWith_(">sentinel<p></p><span></span>dom-mite</div>");
 return self;
 //>>excludeStart("ctx", pragmas.excludeDebugContexts);
 }, function($ctx1) {$ctx1.fill(self,"testMultipleInserts",{d:d,p:p,s:s},$globals.DOMiteTest)});
@@ -835,10 +843,10 @@ return self;
 },
 //>>excludeStart("ide", pragmas.excludeIdeData);
 args: [],
-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 assert: (document body innerHTML endsWith: '>sentinel<p></p><span></span>dom-mite</div>')",
+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>'",
 referencedClasses: [],
 //>>excludeEnd("ide");
-messageSends: ["fromElement:", "testedClass", "newElement:", "<<", "assert:", "endsWith:", "innerHTML", "body"]
+messageSends: ["fromElement:", "testedClass", "newElement:", "<<", "assertBodyEndsWith:"]
 }),
 $globals.DOMiteTest);
 
@@ -885,7 +893,7 @@ $recv(d)._resetContents();
 $ctx1.sendIdx["resetContents"]=2;
 //>>excludeEnd("ctx");
 $recv(d)._resetContents();
-self._assert_($recv($recv($recv(document)._body())._innerHTML())._endsWith_("></div>"));
+self._assertBodyEndsWith_("></div>");
 return self;
 //>>excludeStart("ctx", pragmas.excludeDebugContexts);
 }, function($ctx1) {$ctx1.fill(self,"testMultipleInsertsWithClear",{d:d,p:p,s:s},$globals.DOMiteTest)});
@@ -893,10 +901,10 @@ return self;
 },
 //>>excludeStart("ide", pragmas.excludeIdeData);
 args: [],
-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 assert: (document body innerHTML endsWith: '></div>')",
+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>'",
 referencedClasses: [],
 //>>excludeEnd("ide");
-messageSends: ["at:", "testedClass", "newElement:", "<<", "resetContents", "assert:", "endsWith:", "innerHTML", "body"]
+messageSends: ["at:", "testedClass", "newElement:", "<<", "resetContents", "assertBodyEndsWith:"]
 }),
 $globals.DOMiteTest);
 
@@ -935,7 +943,7 @@ $ctx1.sendIdx["<<"]=2;
 //>>excludeEnd("ctx");
 $recv(d)._resetContents();
 $recv(d).__lt_lt("dom-mite");
-self._assert_($recv($recv($recv(document)._body())._innerHTML())._endsWith_(">dom-mite</div>"));
+self._assertBodyEndsWith_(">dom-mite</div>");
 return self;
 //>>excludeStart("ctx", pragmas.excludeDebugContexts);
 }, function($ctx1) {$ctx1.fill(self,"testMultipleInsertsWithClearInBetween",{d:d,p:p,s:s},$globals.DOMiteTest)});
@@ -943,10 +951,10 @@ return self;
 },
 //>>excludeStart("ide", pragmas.excludeIdeData);
 args: [],
-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 assert: (document body innerHTML endsWith: '>dom-mite</div>')",
+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>'",
 referencedClasses: [],
 //>>excludeEnd("ide");
-messageSends: ["fromElement:", "testedClass", "newElement:", "<<", "resetContents", "assert:", "endsWith:", "innerHTML", "body"]
+messageSends: ["fromElement:", "testedClass", "newElement:", "<<", "resetContents", "assertBodyEndsWith:"]
 }),
 $globals.DOMiteTest);
 

+ 25 - 19
src/DOMite-Tests.st

@@ -26,22 +26,28 @@ testedClass
 
 !DOMiteTest methodsFor: 'testing'!
 
+assertBodyEndsWith: aString
+	| sanitizedBody |
+	sanitizedBody := document body innerHTML replace: '\s*' with: ''.
+	self assert: (sanitizedBody endsWith: aString)
+!
+
 testDefaultInsertElement
 
 	self testedClass new << (self testedClass newElement: 'p').
-	self assert: (document body innerHTML endsWith: '<p></p>').
+	self assertBodyEndsWith: '<p></p>'.
 	document body removeChild: document body lastChild
 !
 
 testDefaultInsertString
-	self testedClass new << 'a foo in a bar'.
-	self assert: (document body innerHTML endsWith: 'a foo in a bar').
+	self testedClass new << 'a-foo--in-a-bar'.
+	self assertBodyEndsWith: 'a-foo--in-a-bar'.
 	document body removeChild: document body lastChild
 !
 
 testDefaultInsertStringInFragment
-	self testedClass new << (self testedClass newStream << 'a foo in a bar').
-	self assert: (document body innerHTML endsWith: 'a foo in a bar').
+	self testedClass new << (self testedClass newStream << 'a-foo--in-a-bar').
+	self assertBodyEndsWith: 'a-foo--in-a-bar'.
 	document body removeChild: document body lastChild
 !
 
@@ -59,21 +65,21 @@ testInsertDomNode
 	| d |
 	d := self testedClass fromElement: fixtureDiv.
 	d << (document createElement: 'pre').
-	self assert: (document body innerHTML endsWith: '>sentinel<pre></pre></div>')
+	self assertBodyEndsWith: '>sentinel<pre></pre></div>'
 !
 
 testInsertDomNodeInFragment
 	| d |
 	d := self testedClass at: '#fixture'.
 	d << (self testedClass newStream << (document createElement: 'script')).
-	self assert: (document body innerHTML endsWith: '>sentinel<script></script></div>')
+	self assertBodyEndsWith: '>sentinel<script></script></div>'
 !
 
 testInsertElement
 	| d |
 	d := self testedClass at: 'html body div#fixture'.
 	d << (self testedClass newElement: 'p').
-	self assert: (document body innerHTML endsWith: '>sentinel<p></p></div>')
+	self assertBodyEndsWith: '>sentinel<p></p></div>'
 !
 
 testInsertElementTwoLevel
@@ -84,7 +90,7 @@ testInsertElementTwoLevel
 	s := self testedClass newElement: 'span'.
 	p << s.
 	s << 'dom-mite'.
-	self assert: (document body innerHTML endsWith: '>sentinel<p><span>dom-mite</span></p></div>')
+	self assertBodyEndsWith: '>sentinel<p><span>dom-mite</span></p></div>'
 !
 
 testInsertElementTwoLevelViaFragments
@@ -95,7 +101,7 @@ testInsertElementTwoLevelViaFragments
 	s := self testedClass newElement: 'span'.
 	p << (self testedClass newStream << s).
 	s << (self testedClass newStream << 'dom-mite').
-	self assert: (document body innerHTML endsWith: '>sentinel<p><span>dom-mite</span></p></div>')
+	self assertBodyEndsWith: '>sentinel<p><span>dom-mite</span></p></div>'
 !
 
 testInsertElementTwoLevelViaTwoLevelFragments
@@ -106,21 +112,21 @@ testInsertElementTwoLevelViaTwoLevelFragments
 	s := self testedClass newElement: 'span'.
 	p << (self testedClass newStream << (self testedClass newStream << s)).
 	s << (self testedClass newStream << (self testedClass newStream << 'dom-mite')).
-	self assert: (document body innerHTML endsWith: '>sentinel<p><span>dom-mite</span></p></div>')
+	self assertBodyEndsWith: '>sentinel<p><span>dom-mite</span></p></div>'
 !
 
 testInsertString
 	| d |
 	d := self testedClass fromElement: fixtureDiv.
-	d << 'a foo in a bar'.
-	self assert: (document body innerHTML endsWith: '>sentinela foo in a bar</div>')
+	d << 'a-foo--in-a-bar'.
+	self assertBodyEndsWith: '>sentinela-foo--in-a-bar</div>'
 !
 
 testInsertStringInFragment
 	| d |
 	d := self testedClass at: '#fixture'.
-	d << (self testedClass newStream << 'a foo in a bar').
-	self assert: (document body innerHTML endsWith: '>sentinela foo in a bar</div>')
+	d << (self testedClass newStream << 'a-foo--in-a-bar').
+	self assertBodyEndsWith: '>sentinela-foo--in-a-bar</div>'
 !
 
 testInsertTable
@@ -143,7 +149,7 @@ testInsertTable
 	tbl << tr.
 	d << tbl.
 	 
-	self assert: (document body innerHTML endsWith: '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>')
+	self assertBodyEndsWith: '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>'
 !
 
 testMultipleInserts
@@ -154,7 +160,7 @@ testMultipleInserts
 	s := self testedClass newElement: 'span'.
 	d << s.
 	d << 'dom-mite'.
-	self assert: (document body innerHTML endsWith: '>sentinel<p></p><span></span>dom-mite</div>')
+	self assertBodyEndsWith: '>sentinel<p></p><span></span>dom-mite</div>'
 !
 
 testMultipleInsertsWithClear
@@ -168,7 +174,7 @@ testMultipleInsertsWithClear
 	d << 'dom-mite'.
 	d resetContents.
 	d resetContents.
-	self assert: (document body innerHTML endsWith: '></div>')
+	self assertBodyEndsWith: '></div>'
 !
 
 testMultipleInsertsWithClearInBetween
@@ -180,6 +186,6 @@ testMultipleInsertsWithClearInBetween
 	d << s.
 	d resetContents.
 	d << 'dom-mite'.
-	self assert: (document body innerHTML endsWith: '>dom-mite</div>')
+	self assertBodyEndsWith: '>dom-mite</div>'
 ! !