JS Test Library - properly escape embedded tags in output to browser windows, add call to actual GC from the JSDebugger service

This commit is contained in:
bob%bclary.com 2006-01-13 19:26:59 +00:00
Родитель 57b884e6a4
Коммит c35118dd68
13 изменённых файлов: 382 добавлений и 45 удалений

Просмотреть файл

@ -49,11 +49,24 @@
* <script src="./../browser.js"></script>
* <script src="./mytest.js"></script>
*/
function htmlesc(str) {
if (str == '<')
return '&lt;';
if (str == '>')
return '&gt;';
if (str == '&')
return '&amp;';
return str;
}
function writeLineToLog( string ) {
string = String(string);
string = string.replace(/[<>&]/g, htmlesc);
document.write( string + "<br>\n");
}
function print( string ) {
string = String(string);
writeLineToLog( string );
}
@ -180,10 +193,22 @@ TEST_XML = function (section, expected, actual)
function gc()
{
// Thanks to igor.bukanov@gmail.com
for (var i = 0; i != 1 << 15; ++i)
try
{
new Object();
// Thanks to dveditz
netscape.security.PrivilegeManager.enablePrivilege('UniversalXPConnect');
var jsdIDebuggerService = Components.interfaces.jsdIDebuggerService;
var service = Components.classes['@mozilla.org/js/jsd/debugger-service;1'].
getService(jsdIDebuggerService);
service.GC();
}
catch(ex)
{
// Thanks to igor.bukanov@gmail.com
for (var i = 0; i != 1 << 15; ++i)
{
new Object();
}
}
}

Просмотреть файл

@ -52,20 +52,36 @@
var GLOBAL = this + '';
function htmlesc(str) {
if (str == '<')
return '&lt;';
if (str == '>')
return '&gt;';
if (str == '&')
return '&amp;';
return str;
}
function writeLineToLog( string ) {
string = String(string);
string = string.replace(/[<>&]/g, htmlesc);
document.write( string + "<br>\n");
}
function writeHeaderToLog( string ) {
string = String(string);
string = string.replace(/[<>&]/g, htmlesc);
document.write( "<h2>" + string + "</h2>" );
}
function writeFormattedResult( expect, actual, string, passed ) {
string = String(string);
string = string.replace(/[<>&]/g, htmlesc);
var s = "<tt>"+ string ;
s += "<b>" ;
s += ( passed ) ? "<font color=#009900> &nbsp;" + PASSED
: "<font color=#aa0000>&nbsp;" + FAILED + expect + "</tt>";
writeLineToLog( s + "</font></b></tt>" );
document.write( s + "</font></b></tt><br>" );
return passed;
}
@ -130,12 +146,23 @@ function version(v)
return gVersion;
}
function gc()
{
// Thanks to igor.bukanov@gmail.com
for (var i = 0; i != 1 << 15; ++i)
try
{
new Object();
// Thanks to dveditz
netscape.security.PrivilegeManager.enablePrivilege('UniversalXPConnect');
var jsdIDebuggerService = Components.interfaces.jsdIDebuggerService;
var service = Components.classes['@mozilla.org/js/jsd/debugger-service;1'].
getService(jsdIDebuggerService);
service.GC();
}
catch(ex)
{
// Thanks to igor.bukanov@gmail.com
for (var i = 0; i != 1 << 15; ++i)
{
new Object();
}
}
}

Просмотреть файл

@ -52,19 +52,35 @@
var GLOBAL = this + '';
function htmlesc(str) {
if (str == '<')
return '&lt;';
if (str == '>')
return '&gt;';
if (str == '&')
return '&amp;';
return str;
}
function writeLineToLog( string ) {
string = String(string);
string = string.replace(/[<>&]/g, htmlesc);
document.write( string + "<br>\n");
}
function writeHeaderToLog( string ) {
string = String(string);
string = string.replace(/[<>&]/g, htmlesc);
document.write( "<h2>" + string + "</h2>" );
}
function writeFormattedResult( expect, actual, string, passed ) {
string = String(string);
string = string.replace(/[<>&]/g, htmlesc);
var s = "<tt>"+ string ;
s += "<b>" ;
s += ( passed ) ? "<font color=#009900> &nbsp;" + PASSED
: "<font color=#aa0000>&nbsp;" + FAILED + expect + "</tt>";
writeLineToLog( s + "</font></b></tt>" );
document.write( s + "</font></b></tt><br>" );
return passed;
}
@ -132,9 +148,21 @@ function version(v)
function gc()
{
// Thanks to igor.bukanov@gmail.com
for (var i = 0; i != 1 << 15; ++i)
try
{
new Object();
// Thanks to dveditz
netscape.security.PrivilegeManager.enablePrivilege('UniversalXPConnect');
var jsdIDebuggerService = Components.interfaces.jsdIDebuggerService;
var service = Components.classes['@mozilla.org/js/jsd/debugger-service;1'].
getService(jsdIDebuggerService);
service.GC();
}
catch(ex)
{
// Thanks to igor.bukanov@gmail.com
for (var i = 0; i != 1 << 15; ++i)
{
new Object();
}
}
}

Просмотреть файл

@ -52,20 +52,36 @@
var GLOBAL = this + '';
function htmlesc(str) {
if (str == '<')
return '&lt;';
if (str == '>')
return '&gt;';
if (str == '&')
return '&amp;';
return str;
}
function writeLineToLog( string ) {
string = String(string);
string = string.replace(/[<>&]/g, htmlesc);
document.write( string + "<br>\n");
}
function writeHeaderToLog( string ) {
string = String(string);
string = string.replace(/[<>&]/g, htmlesc);
document.write( "<h2>" + string + "</h2>" );
}
function writeFormattedResult( expect, actual, string, passed ) {
string = String(string);
string = string.replace(/[<>&]/g, htmlesc);
var s = "<tt>"+ string ;
s += "<b>" ;
s += ( passed ) ? "<font color=#009900> &nbsp;" + PASSED
: "<font color=#aa0000>&nbsp;" + FAILED + expect + "</tt>";
writeLineToLog( s + "</font></b></tt>" );
document.write( s + "</font></b></tt><br>" );
return passed;
}

Просмотреть файл

@ -50,7 +50,19 @@
* <script src="./mytest.js"></script>
*/
function htmlesc(str) {
if (str == '<')
return '&lt;';
if (str == '>')
return '&gt;';
if (str == '&')
return '&amp;';
return str;
}
function writeLineToLog( string ) {
string = String(string);
string = string.replace(/[<>&]/g, htmlesc);
document.write( string + "<br>\n");
}
@ -143,9 +155,21 @@ window.onerror = reportFailure;
function gc()
{
// Thanks to igor.bukanov@gmail.com
for (var i = 0; i != 1 << 15; ++i)
try
{
new Object();
// Thanks to dveditz
netscape.security.PrivilegeManager.enablePrivilege('UniversalXPConnect');
var jsdIDebuggerService = Components.interfaces.jsdIDebuggerService;
var service = Components.classes['@mozilla.org/js/jsd/debugger-service;1'].
getService(jsdIDebuggerService);
service.GC();
}
catch(ex)
{
// Thanks to igor.bukanov@gmail.com
for (var i = 0; i != 1 << 15; ++i)
{
new Object();
}
}
}

Просмотреть файл

@ -52,19 +52,32 @@
GLOBAL = this + '';
function htmlesc(str) {
if (str == '<')
return '&lt;';
if (str == '>')
return '&gt;';
if (str == '&')
return '&amp;';
return str;
}
function writeLineToLog( string ) {
string = string.replace(/[<>&]/g, htmlesc);
document.write( string + "<br>\n");
}
function writeHeaderToLog( string ) {
string = string.replace(/[<>&]/g, htmlesc);
document.write( "<h2>" + string + "</h2>" );
}
function writeFormattedResult( expect, actual, string, passed ) {
string = string.replace(/[<>&]/g, htmlesc);
var s = "<tt>"+ string ;
s += "<b>" ;
s += ( passed ) ? "<font color=#009900> &nbsp;" + PASSED
: "<font color=#aa0000>&nbsp;" + FAILED + expect + "</tt>";
writeLineToLog( s + "</font></b></tt>" );
document.write( s + "</font></b></tt><br>" );
return passed;
}
@ -129,9 +142,21 @@ function version(v) {
function gc()
{
// Thanks to igor.bukanov@gmail.com
for (var i = 0; i != 1 << 15; ++i)
try
{
new Object();
// Thanks to dveditz
netscape.security.PrivilegeManager.enablePrivilege('UniversalXPConnect');
var jsdIDebuggerService = Components.interfaces.jsdIDebuggerService;
var service = Components.classes['@mozilla.org/js/jsd/debugger-service;1'].
getService(jsdIDebuggerService);
service.GC();
}
catch(ex)
{
// Thanks to igor.bukanov@gmail.com
for (var i = 0; i != 1 << 15; ++i)
{
new Object();
}
}
}

Просмотреть файл

@ -52,20 +52,36 @@
var GLOBAL = this + '';
function htmlesc(str) {
if (str == '<')
return '&lt;';
if (str == '>')
return '&gt;';
if (str == '&')
return '&amp;';
return str;
}
function writeLineToLog( string ) {
string = String(string);
string = string.replace(/[<>&]/g, htmlesc);
document.write( string + "<br>\n");
}
function writeHeaderToLog( string ) {
string = String(string);
string = string.replace(/[<>&]/g, htmlesc);
document.write( "<h2>" + string + "</h2>" );
}
function writeFormattedResult( expect, actual, string, passed ) {
string = String(string);
string = string.replace(/[<>&]/g, htmlesc);
var s = "<tt>"+ string ;
s += "<b>" ;
s += ( passed ) ? "<font color=#009900> &nbsp;" + PASSED
: "<font color=#aa0000>&nbsp;" + FAILED + expect + "</tt>";
writeLineToLog( s + "</font></b></tt>" );
document.write( s + "</font></b></tt><br>" );
return passed;
}
@ -132,9 +148,21 @@ function version(v)
function gc()
{
// Thanks to igor.bukanov@gmail.com
for (var i = 0; i != 1 << 15; ++i)
try
{
new Object();
// Thanks to dveditz
netscape.security.PrivilegeManager.enablePrivilege('UniversalXPConnect');
var jsdIDebuggerService = Components.interfaces.jsdIDebuggerService;
var service = Components.classes['@mozilla.org/js/jsd/debugger-service;1'].
getService(jsdIDebuggerService);
service.GC();
}
catch(ex)
{
// Thanks to igor.bukanov@gmail.com
for (var i = 0; i != 1 << 15; ++i)
{
new Object();
}
}
}

Просмотреть файл

@ -52,18 +52,34 @@
GLOBAL = this + '';
function htmlesc(str) {
if (str == '<')
return '&lt;';
if (str == '>')
return '&gt;';
if (str == '&')
return '&amp;';
return str;
}
function writeLineToLog( string ) {
string = String(string);
string = string.replace(/[<>&]/g, htmlesc);
string = string.replace(/[<>&]/g, htmlesc);
document.write( string + "<br>\n");
}
function writeHeaderToLog( string ) {
string = String(string);
document.write( "<h2>" + string + "</h2>" );
}
function writeFormattedResult( expect, actual, string, passed ) {
string = String(string);
string = string.replace(/[<>&]/g, htmlesc);
var s = "<tt>"+ string ;
s += "<b>" ;
s += ( passed ) ? "<font color=#009900> &nbsp;" + PASSED
: "<font color=#aa0000>&nbsp;" + FAILED + expect + "</tt>";
writeLineToLog( s + "</font></b></tt>" );
document.write( s + "</font></b></tt><br>" );
return passed;
}
@ -129,9 +145,21 @@ function version(v)
function gc()
{
// Thanks to igor.bukanov@gmail.com
for (var i = 0; i != 1 << 15; ++i)
try
{
new Object();
// Thanks to dveditz
netscape.security.PrivilegeManager.enablePrivilege('UniversalXPConnect');
var jsdIDebuggerService = Components.interfaces.jsdIDebuggerService;
var service = Components.classes['@mozilla.org/js/jsd/debugger-service;1'].
getService(jsdIDebuggerService);
service.GC();
}
catch(ex)
{
// Thanks to igor.bukanov@gmail.com
for (var i = 0; i != 1 << 15; ++i)
{
new Object();
}
}
}

Просмотреть файл

@ -52,19 +52,35 @@
GLOBAL = this + '';
function htmlesc(str) {
if (str == '<')
return '&lt;';
if (str == '>')
return '&gt;';
if (str == '&')
return '&amp;';
return str;
}
function writeLineToLog( string ) {
string = String(string);
string = string.replace(/[<>&]/g, htmlesc);
document.write( string + "<br>\n");
}
function writeHeaderToLog( string ) {
string = String(string);
string = string.replace(/[<>&]/g, htmlesc);
document.write( "<h2>" + string + "</h2>" );
}
function writeFormattedResult( expect, actual, string, passed ) {
string = String(string);
string = string.replace(/[<>&]/g, htmlesc);
var s = "<tt>"+ string ;
s += "<b>" ;
s += ( passed ) ? "<font color=#009900> &nbsp;" + PASSED
: "<font color=#aa0000>&nbsp;" + FAILED + expect + "</tt>";
writeLineToLog( s + "</font></b></tt>" );
document.write( s + "</font></b></tt><br>" );
return passed;
}
@ -131,9 +147,21 @@ function version(v)
function gc()
{
// Thanks to igor.bukanov@gmail.com
for (var i = 0; i != 1 << 15; ++i)
try
{
new Object();
// Thanks to dveditz
netscape.security.PrivilegeManager.enablePrivilege('UniversalXPConnect');
var jsdIDebuggerService = Components.interfaces.jsdIDebuggerService;
var service = Components.classes['@mozilla.org/js/jsd/debugger-service;1'].
getService(jsdIDebuggerService);
service.GC();
}
catch(ex)
{
// Thanks to igor.bukanov@gmail.com
for (var i = 0; i != 1 << 15; ++i)
{
new Object();
}
}
}

Просмотреть файл

@ -49,7 +49,19 @@
* <script src="./../browser.js"></script>
* <script src="./mytest.js"></script>
*/
function htmlesc(str) {
if (str == '<')
return '&lt;';
if (str == '>')
return '&gt;';
if (str == '&')
return '&amp;';
return str;
}
function writeLineToLog( string ) {
string = String(string);
string = string.replace(/[<>&]/g, htmlesc);
document.write( string + "<br>\n");
}
@ -134,10 +146,22 @@ reportFailure = function (msg, page, line)
function gc()
{
// Thanks to igor.bukanov@gmail.com
for (var i = 0; i != 1 << 15; ++i)
try
{
new Object();
// Thanks to dveditz
netscape.security.PrivilegeManager.enablePrivilege('UniversalXPConnect');
var jsdIDebuggerService = Components.interfaces.jsdIDebuggerService;
var service = Components.classes['@mozilla.org/js/jsd/debugger-service;1'].
getService(jsdIDebuggerService);
service.GC();
}
catch(ex)
{
// Thanks to igor.bukanov@gmail.com
for (var i = 0; i != 1 << 15; ++i)
{
new Object();
}
}
}

Просмотреть файл

@ -49,7 +49,20 @@
* <script src="./../browser.js"></script>
* <script src="./mytest.js"></script>
*/
function htmlesc(str) {
if (str == '<')
return '&lt;';
if (str == '>')
return '&gt;';
if (str == '&')
return '&amp;';
return str;
}
function writeLineToLog( string ) {
string = String(string);
string = string.replace(/[<>&]/g, htmlesc);
document.write( string + "<br>\n");
}
@ -137,6 +150,23 @@ reportFailure = function (msg, page, line)
function gc()
{
try
{
// Thanks to dveditz
netscape.security.PrivilegeManager.enablePrivilege('UniversalXPConnect');
var jsdIDebuggerService = Components.interfaces.jsdIDebuggerService;
var service = Components.classes['@mozilla.org/js/jsd/debugger-service;1'].
getService(jsdIDebuggerService);
service.GC();
}
catch(ex)
{
// Thanks to igor.bukanov@gmail.com
for (var i = 0; i != 1 << 15; ++i)
{
new Object();
}
}
}
function quit()

Просмотреть файл

@ -53,18 +53,34 @@ var H2 = "<h2>";
var H2_ = "</h2>";
var HR = "<hr>";
function htmlesc(str) {
if (str == '<')
return '&lt;';
if (str == '>')
return '&gt;';
if (str == '&')
return '&amp;';
return str;
}
function writeLineToLog( string ) {
string = String(string);
string = string.replace(/[<>&]/g, htmlesc);
document.write( string + "<br>\n" );
}
function writeHeaderToLog( string ) {
string = String(string);
string = string.replace(/[<>&]/g, htmlesc);
document.write( "<h2>" + string + "</h2>\n" );
}
function writeFormattedResult( expect, actual, string, passed ) {
string = String(string);
string = string.replace(/[<>&]/g, htmlesc);
var s = "<tt>"+ string ;
s += "<b>" ;
s += ( passed ) ? "<font color=#009900> &nbsp;" + PASSED
: "<font color=#aa0000>&nbsp;" + FAILED + expect + "</tt>";
writeLineToLog( s + "</font></b></tt>" );
document.write( s + "</font></b></tt><br>" );
return passed;
}
function ToInteger( t ) {
@ -152,10 +168,21 @@ function version(v)
function gc()
{
// Thanks to igor.bukanov@gmail.com
for (var i = 0; i != 1 << 15; ++i)
try
{
new Object();
// Thanks to dveditz
netscape.security.PrivilegeManager.enablePrivilege('UniversalXPConnect');
var jsdIDebuggerService = Components.interfaces.jsdIDebuggerService;
var service = Components.classes['@mozilla.org/js/jsd/debugger-service;1'].
getService(jsdIDebuggerService);
service.GC();
}
catch(ex)
{
// Thanks to igor.bukanov@gmail.com
for (var i = 0; i != 1 << 15; ++i)
{
new Object();
}
}
}

Просмотреть файл

@ -67,18 +67,34 @@ var H2 = "<h2>";
var H2_ = "</h2>";
var HR = "<hr>";
function htmlesc(str) {
if (str == '<')
return '&lt;';
if (str == '>')
return '&gt;';
if (str == '&')
return '&amp;';
return str;
}
function writeLineToLog( string ) {
string = String(string);
string = string.replace(/[<>&]/g, htmlesc);
document.write( string + "<br>\n");
}
function writeHeaderToLog( string ) {
string = String(string);
string = string.replace(/[<>&]/g, htmlesc);
document.write( "<h2>" + string + "</h2>" );
}
function writeFormattedResult( expect, actual, string, passed ) {
string = String(string);
string = string.replace(/[<>&]/g, htmlesc);
var s = "<tt>"+ string ;
s += "<b>" ;
s += ( passed ) ? "<font color=#009900> &nbsp;" + PASSED
: "<font color=#aa0000>&nbsp;" + FAILED + expect + "</tt>";
writeLineToLog( s + "</font></b></tt>" );
document.write( s + "</font></b></tt><br>" );
return passed;
}
@ -145,10 +161,21 @@ function version(v)
function gc()
{
// Thanks to igor.bukanov@gmail.com
for (var i = 0; i != 1 << 15; ++i)
try
{
new Object();
// Thanks to dveditz
netscape.security.PrivilegeManager.enablePrivilege('UniversalXPConnect');
var jsdIDebuggerService = Components.interfaces.jsdIDebuggerService;
var service = Components.classes['@mozilla.org/js/jsd/debugger-service;1'].
getService(jsdIDebuggerService);
service.GC();
}
catch(ex)
{
// Thanks to igor.bukanov@gmail.com
for (var i = 0; i != 1 << 15; ++i)
{
new Object();
}
}
}