зеркало из https://github.com/mozilla/gecko-dev.git
Test case for nsIDocCharset interface.
This commit is contained in:
Родитель
651b94b613
Коммит
f456fbe124
|
@ -0,0 +1,205 @@
|
||||||
|
<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
|
||||||
|
<html>
|
||||||
|
<title> nsIDocCharset </title>
|
||||||
|
<!-- Descrpt: nsIDocCharset interface test
|
||||||
|
Author: dsirnapalli@netscape.com
|
||||||
|
Revs: 09.10.01 - Created
|
||||||
|
|
||||||
|
- The contents of this file are subject to the Mozilla Public
|
||||||
|
- License Version 1.1 (the "License"); you may not use this file
|
||||||
|
- except in compliance with the License. You may obtain a copy of
|
||||||
|
- the License at http://www.mozilla.org/MPL/
|
||||||
|
-
|
||||||
|
- Software distributed under the License is distributed on an "AS
|
||||||
|
- IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||||
|
- implied. See the License for the specific language governing
|
||||||
|
- rights and limitations under the License.
|
||||||
|
-
|
||||||
|
- The Original Code is Mozilla Communicator Test Cases.
|
||||||
|
-
|
||||||
|
- The Initial Developer of the Original Code is Netscape Communications
|
||||||
|
- Corp. Portions created by Netscape Communications Corp. are
|
||||||
|
- Copyright (C) 1999 Netscape Communications Corp. All
|
||||||
|
- Rights Reserved.
|
||||||
|
-
|
||||||
|
- Contributor(s):
|
||||||
|
-->
|
||||||
|
<head>
|
||||||
|
|
||||||
|
<!-- script below is ngdriverspecific -->
|
||||||
|
<script type="text/javascript" src="http://bubblegum/ngdriver/suites/testlib.js">
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<script type="text/javascript">
|
||||||
|
|
||||||
|
function getnsIDOMWindow()
|
||||||
|
{
|
||||||
|
try
|
||||||
|
{
|
||||||
|
netscape.security.PrivilegeManager.enablePrivilege("UniversalBrowserRead");
|
||||||
|
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
|
||||||
|
var domobject = window.QueryInterface(Components.interfaces.nsIDOMWindow);
|
||||||
|
}
|
||||||
|
catch(e) {
|
||||||
|
dump ("\nError getting nsIDOMWindow\n");
|
||||||
|
}
|
||||||
|
return domobject;
|
||||||
|
}
|
||||||
|
|
||||||
|
function getdocCharset()
|
||||||
|
{
|
||||||
|
try
|
||||||
|
{
|
||||||
|
netscape.security.PrivilegeManager.enablePrivilege("UniversalBrowserRead");
|
||||||
|
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
|
||||||
|
// You get nsIDocCharset by GI' ing off nsIDOMWindow.
|
||||||
|
// nsIDOMWindow doesnot implement getInterface directly. So you need to QI first.
|
||||||
|
var charsetObj = domWindow.QueryInterface(Components.interfaces.nsIInterfaceRequestor)
|
||||||
|
.getInterface(Components.interfaces.nsIDocCharset);
|
||||||
|
return(charsetObj);
|
||||||
|
}
|
||||||
|
catch(e) {
|
||||||
|
dump ("\nError getting nsIDocCharset\n");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function constructResult(initialcharset, charset)
|
||||||
|
{
|
||||||
|
var results = "";
|
||||||
|
|
||||||
|
initialcharsetvalue = "Fail";
|
||||||
|
charsetvalue = "Fail";
|
||||||
|
|
||||||
|
initialcharsetcolor = "white";
|
||||||
|
charsetcolor = "white";
|
||||||
|
|
||||||
|
if(initialcharset != null) initialcharsetvalue = "Pass" ;
|
||||||
|
if(charset == "UTF-8") charsetvalue = "Pass" ;
|
||||||
|
|
||||||
|
if(initialcharset == null) initailcharsetcolor = "red" ;
|
||||||
|
if(charset != "UTF-8") charsetcolor = "red" ;
|
||||||
|
|
||||||
|
results = results + "<html><br>";
|
||||||
|
results = results + " <table bgcolor='white' border='4'>";
|
||||||
|
results = results + " <tbody>";
|
||||||
|
results = results + " <caption> <center> <b> nsIDocCharset Results </b> </center> </caption><br>";
|
||||||
|
results = results + " <tr>";
|
||||||
|
results = results + " <td> <b> Case# </b> </td>";
|
||||||
|
results = results + " <td> <b> Description </b> </td>";
|
||||||
|
results = results + " <td> <b> Value </b> </td>";
|
||||||
|
results = results + " <td> <b> Result </b> </td>";
|
||||||
|
results = results + " </tr>";
|
||||||
|
results = results + " <tr bgcolor = '" + initialcharsetcolor + "'>";
|
||||||
|
results = results + " <td> 1 </td>";
|
||||||
|
results = results + " <td> Initial charset value </td>";
|
||||||
|
results = results + " <td>" + initialcharset + "</td>";
|
||||||
|
results = results + " <td>" + initialcharsetvalue + "</td>";
|
||||||
|
results = results + " </tr>";
|
||||||
|
results = results + " <tr bgcolor = '" + charsetcolor + "'>";
|
||||||
|
results = results + " <td> 2 </td>";
|
||||||
|
results = results + " <td> charset value after setting </td>";
|
||||||
|
results = results + " <td>" + charset + "</td>";
|
||||||
|
results = results + " <td>" + charsetvalue + "</td>";
|
||||||
|
results = results + " </tr>";
|
||||||
|
results = results + " </tbody>";
|
||||||
|
results = results + " </table>";
|
||||||
|
results = results + "</html>";
|
||||||
|
|
||||||
|
document.results.textarea.value = results;
|
||||||
|
if (top.name == "testWindow")
|
||||||
|
{
|
||||||
|
fixSubmit();
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
document.write(document.results.textarea.value);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<script language="JavaScript">
|
||||||
|
|
||||||
|
function createCookie(name,value,days)
|
||||||
|
{
|
||||||
|
if (days)
|
||||||
|
{
|
||||||
|
var date = new Date();
|
||||||
|
date.setTime(date.getTime()+(days*24*60*60*1000));
|
||||||
|
var expires = "; expires="+date.toGMTString();
|
||||||
|
}
|
||||||
|
else expires = "";
|
||||||
|
document.cookie = name+"="+value+expires+"; path=/";
|
||||||
|
}
|
||||||
|
|
||||||
|
function readCookie(name)
|
||||||
|
{
|
||||||
|
var nameEQ = name + "=";
|
||||||
|
var ca = document.cookie.split(';');
|
||||||
|
for(var i=0;i < ca.length;i++)
|
||||||
|
{
|
||||||
|
var c = ca[i];
|
||||||
|
while (c.charAt(0)==' ')
|
||||||
|
c = c.substring(1,c.length);
|
||||||
|
if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
|
||||||
|
}
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
function eraseCookie(name)
|
||||||
|
{
|
||||||
|
createCookie(name,"",-1);
|
||||||
|
}
|
||||||
|
|
||||||
|
</script>
|
||||||
|
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
|
||||||
|
<!-- form below is ngdriverspecific -->
|
||||||
|
<form name="results" action="/ngdriver/cgi-bin/writeresults.cgi" method="post">
|
||||||
|
<script type="text/javascript">
|
||||||
|
document.write('<input name="resultsfile" type="hidden" value="' + window.opener.document.resultsform.resultsfile.value + '">');
|
||||||
|
</script>
|
||||||
|
<input type="hidden" name="textarea">
|
||||||
|
</form>
|
||||||
|
|
||||||
|
<script type="text/javascript">
|
||||||
|
|
||||||
|
var domWindow = getnsIDOMWindow();
|
||||||
|
var docCharset = getdocCharset();
|
||||||
|
|
||||||
|
if(readCookie("docCharset") == null)
|
||||||
|
{
|
||||||
|
try
|
||||||
|
{
|
||||||
|
netscape.security.PrivilegeManager.enablePrivilege("UniversalBrowserRead");
|
||||||
|
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
|
||||||
|
var charsetValue = docCharset.charset;
|
||||||
|
docCharset.charset = "Shift_JIS";
|
||||||
|
}
|
||||||
|
catch(e) {
|
||||||
|
dump ("\nError getting nsIDocCharset\n");
|
||||||
|
}
|
||||||
|
|
||||||
|
createCookie("docCharset", charsetValue, 14);
|
||||||
|
window.location.reload();
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
var cookieValue = readCookie("docCharset");
|
||||||
|
try
|
||||||
|
{
|
||||||
|
netscape.security.PrivilegeManager.enablePrivilege("UniversalBrowserRead");
|
||||||
|
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
|
||||||
|
constructResult(cookieValue, docCharset.charset);
|
||||||
|
}
|
||||||
|
catch(e) {
|
||||||
|
dump ("\nError getting nsIDocCharset\n");
|
||||||
|
}
|
||||||
|
eraseCookie("docCharset");
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
</body>
|
||||||
|
</html>
|
Загрузка…
Ссылка в новой задаче