Commit b6bc92aa authored by Jacek Caban's avatar Jacek Caban Committed by Alexandre Julliard

mshtml: Added IHTMLScriptElement::put_text tests.

parent 1aa8742d
...@@ -5,6 +5,7 @@ Script execution test ...@@ -5,6 +5,7 @@ Script execution test
<div id="b2"></div> <div id="b2"></div>
<div id="b3"></div> <div id="b3"></div>
<script id="emptyscript"></script> <script id="emptyscript"></script>
<script id="put_text_script">2+2</script>
<script> <script>
function ok(b, msg) { function ok(b, msg) {
return external.ok(b, msg); return external.ok(b, msg);
...@@ -12,6 +13,7 @@ function ok(b, msg) { ...@@ -12,6 +13,7 @@ function ok(b, msg) {
var executed = false; var executed = false;
var extern_cnt = 0; var extern_cnt = 0;
var exec_cnt;
function testWriteScript() { function testWriteScript() {
var len = document.getElementsByTagName('div').length; var len = document.getElementsByTagName('div').length;
...@@ -24,7 +26,7 @@ function testWriteScript() { ...@@ -24,7 +26,7 @@ function testWriteScript() {
+ "<" + "/script>"); + "<" + "/script>");
len = document.getElementsByTagName('script').length; len = document.getElementsByTagName('script').length;
ok(len === 3, "script col length = " + len); ok(len === 4, "script col length = " + len);
ok(executed, "written script not executed"); ok(executed, "written script not executed");
} }
...@@ -36,9 +38,22 @@ function testPutSrc() { ...@@ -36,9 +38,22 @@ function testPutSrc() {
ok(extern_cnt === 0, "extern_cnt = " + extern_cnt + " expected 0"); ok(extern_cnt === 0, "extern_cnt = " + extern_cnt + " expected 0");
} }
function testPutText() {
var elem = document.getElementById("put_text_script");
exec_cnt = 0;
elem.text = "exec_cnt++;";
ok(exec_cnt === 1, "put_text_script exec_cnt " + exec_cnt);
exec_cnt = 0;
elem.text = "exec_cnt++;";
ok(exec_cnt === 1, "put_text_script exec_cnt " + exec_cnt);
}
try { try {
testWriteScript(); testWriteScript();
testPutSrc(); testPutSrc();
testPutText();
}catch(e) { }catch(e) {
ok(false, "Got an exception"); ok(false, "Got an exception");
} }
...@@ -67,10 +82,46 @@ function testPutSrc2() { ...@@ -67,10 +82,46 @@ function testPutSrc2() {
ok(extern_cnt === 4, "extern_cnt = " + extern_cnt + " expected 4"); ok(extern_cnt === 4, "extern_cnt = " + extern_cnt + " expected 4");
} }
function testPutText2() {
var elem;
elem = document.createElement("script");
exec_cnt = 0;
elem.text = "exec_cnt++;";
ok(exec_cnt === 0, "script exec_cnt " + exec_cnt);
document.body.appendChild(elem);
ok(exec_cnt === 1, "script exec_cnt " + exec_cnt);
exec_cnt = 0;
elem.text = "exec_cnt++;";
ok(exec_cnt === 1, "script exec_cnt " + exec_cnt);
elem.src = "externscr.js";
ok(extern_cnt === 5, "extern_cnt = " + extern_cnt + " expected 5");
exec_cnt = 0;
ok(extern_cnt === 5, "> extern_cnt = " + extern_cnt + " expected 5");
elem.text = "exec_cnt++;"; /* forces evaluation, but src will be executed */
ok(exec_cnt === 0, "script exec_cnt " + exec_cnt);
ok(extern_cnt === 6, "< extern_cnt = " + extern_cnt + " expected 6");
elem = document.createElement("script");
exec_cnt = 0;
elem.text = "exec_cnt++;";
ok(exec_cnt === 0, "script exec_cnt " + exec_cnt);
elem.src = "externscr.js";
ok(extern_cnt === 6, "extern_cnt = " + extern_cnt + " expected 6");
document.body.appendChild(elem);
ok(exec_cnt === 0, "script exec_cnt " + exec_cnt);
ok(extern_cnt === 7, "extern_cnt = " + extern_cnt + " expected 7");
}
document.body.onload = function() { document.body.onload = function() {
ok(extern_cnt === 1, "extern_cnt = " + extern_cnt); ok(extern_cnt === 1, "extern_cnt = " + extern_cnt);
try { try {
testPutSrc2(); testPutSrc2();
testPutText2();
}catch(e) { }catch(e) {
ok(false, "got an exception"); ok(false, "got an exception");
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment