зеркало из https://github.com/mozilla/pjs.git
chromeing XSLT QA app buster, not removing security checks yet, though. Plus, adding stats and test display by peterv. Not part of build.
This commit is contained in:
Родитель
bbbe940ae9
Коммит
777e704d31
|
@ -0,0 +1,47 @@
|
|||
# ***** BEGIN LICENSE BLOCK *****
|
||||
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
|
||||
#
|
||||
# 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.org.
|
||||
#
|
||||
# The Initial Developer of the Original Code is Axel Hecht.
|
||||
# Portions created by the Initial Developer are Copyright (C) 2002
|
||||
# the Initial Developer. All Rights Reserved.
|
||||
#
|
||||
# Contributor(s):
|
||||
# Axel Hecht <axel@pike.org>
|
||||
#
|
||||
# Alternatively, the contents of this file may be used under the terms of
|
||||
# either the GNU General Public License Version 2 or later (the "GPL"), or
|
||||
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
|
||||
# in which case the provisions of the GPL or the LGPL are applicable instead
|
||||
# of those above. If you wish to allow use of your version of this file only
|
||||
# under the terms of either the GPL or the LGPL, and not to allow others to
|
||||
# use your version of this file under the terms of the MPL, indicate your
|
||||
# decision by deleting the provisions above and replace them with the notice
|
||||
# and other provisions required by the GPL or the LGPL. If you do not delete
|
||||
# the provisions above, a recipient may use your version of this file under
|
||||
# the terms of any one of the MPL, the GPL or the LGPL.
|
||||
#
|
||||
# ***** END LICENSE BLOCK *****
|
||||
|
||||
|
||||
DEPTH = ../../..
|
||||
topsrcdir = @top_srcdir@
|
||||
srcdir = @srcdir@
|
||||
VPATH = @srcdir@
|
||||
|
||||
include $(DEPTH)/config/autoconf.mk
|
||||
|
||||
MOZ_CHROME_FILE_FORMAT=flat
|
||||
|
||||
include $(topsrcdir)/config/rules.mk
|
|
@ -73,15 +73,23 @@ const nsIRDFService = Components.interfaces.nsIRDFService;
|
|||
const nsIRDFDataSource = Components.interfaces.nsIRDFDataSource;
|
||||
const nsIRDFResource = Components.interfaces.nsIRDFResource;
|
||||
const nsIRDFLiteral = Components.interfaces.nsIRDFLiteral;
|
||||
const nsIRDFInt = Components.interfaces.nsIRDFInt;
|
||||
const nsIRDFContainerUtils = Components.interfaces.nsIRDFContainerUtils;
|
||||
const nsIRDFXMLSerializer = Components.interfaces.nsIRDFXMLSerializer;
|
||||
const nsIRDFXMLSource = Components.interfaces.nsIRDFXMLSource;
|
||||
const kRDFSvc =
|
||||
Components.classes[kRDFSvcContractID].getService(nsIRDFService);
|
||||
const krTypeCat = kRDFSvc.GetResource("http://home.netscape.com/NC-rdf#category");
|
||||
const krTypeFailCount = kRDFSvc.GetResource("http://home.netscape.com/NC-rdf#failCount");
|
||||
const krTypeName = kRDFSvc.GetResource("http://home.netscape.com/NC-rdf#name");
|
||||
const krTypeSucc = kRDFSvc.GetResource("http://home.netscape.com/NC-rdf#succ");
|
||||
const krTypeOrigSucc = kRDFSvc.GetResource("http://home.netscape.com/NC-rdf#orig_succ");
|
||||
const krTypeOrigFailCount = kRDFSvc.GetResource("http://home.netscape.com/NC-rdf#orig_failCount");
|
||||
const krTypeOrigSuccCount = kRDFSvc.GetResource("http://home.netscape.com/NC-rdf#orig_succCount");
|
||||
const krTypePath = kRDFSvc.GetResource("http://home.netscape.com/NC-rdf#path");
|
||||
const krTypeParent = kRDFSvc.GetResource("http://home.netscape.com/NC-rdf#parent");
|
||||
const krTypePurp = kRDFSvc.GetResource("http://home.netscape.com/NC-rdf#purp");
|
||||
const krTypeSuccCount = kRDFSvc.GetResource("http://home.netscape.com/NC-rdf#succCount");
|
||||
const kGood = kRDFSvc.GetLiteral("yes");
|
||||
const kBad = kRDFSvc.GetLiteral("no");
|
||||
const kMixed = kRDFSvc.GetLiteral("+-");
|
||||
|
|
|
@ -189,16 +189,23 @@ runItem.prototype =
|
|||
}
|
||||
}
|
||||
var refContent = this.loadTextFile(xalan_ref+".out");
|
||||
var iframe;
|
||||
if (refContent.match(/^<\?xml/)) {
|
||||
this.mRefDoc = parser.parseFromString(refContent, 'text/xml');
|
||||
}
|
||||
else if (refContent.match(/^\s*<html/gi)) {
|
||||
this.mMethod = 'html';
|
||||
var iframe = document.getElementById('hiddenHtml').contentDocument;
|
||||
iframe = document.getElementById('hiddenHtml').contentDocument;
|
||||
iframe.documentElement.innerHTML = refContent;
|
||||
//this.mRefDoc = iframe.documentElement.cloneNode(true);
|
||||
this.mRefDoc = iframe;
|
||||
DumpDOM(this.mRefDoc)
|
||||
}
|
||||
else {
|
||||
iframe = document.getElementById('hiddenHtml').contentDocument;
|
||||
iframe.documentElement.innerHTML = refContent;
|
||||
if (iframe.documentElement.firstChild) {
|
||||
this.mMethod = 'html';
|
||||
this.mRefDoc = iframe;
|
||||
}
|
||||
}
|
||||
this.mSourceDoc = document.implementation.createDocument('', '', null);
|
||||
this.mSourceDoc.addEventListener("load",this.onload(1),false);
|
||||
|
|
|
@ -133,30 +133,133 @@ var view =
|
|||
alert("Unable do load DataSource: "+baseSpec);
|
||||
return;
|
||||
}
|
||||
view.database.AddDataSource(ds);
|
||||
view.memoryDataSource = doCreate(kRDFInMemContractID,
|
||||
nsIRDFDataSource);
|
||||
if (!view.memoryDataSource) {
|
||||
alert("Unable to create write-protect InMemDatasource,"+
|
||||
" not adding "+ baseSpec);
|
||||
this.database.RemoveDataSource(ds);
|
||||
}
|
||||
view.database.AddDataSource(view.memoryDataSource);
|
||||
else {
|
||||
view.database.AddObserver(new regressionStats());
|
||||
view.database.AddDataSource(ds);
|
||||
view.database.AddDataSource(view.memoryDataSource);
|
||||
}
|
||||
view.builder.rebuild();
|
||||
document.getElementById("xalan_rdf").value = baseSpec;
|
||||
runItem.prototype.kXalan.init(runItem.prototype.kXalan.URLTYPE_STANDARD,
|
||||
0, baseSpec, null, null);
|
||||
},
|
||||
fillItemContext : function()
|
||||
{
|
||||
enablePrivilege('UniversalXPConnect');
|
||||
var index = view.boxObject.selection.currentIndex;
|
||||
var res = view.builder.getResourceAtIndex(index);
|
||||
var purp = view.database.GetTarget(res, krTypePurp, true);
|
||||
return (purp != null);
|
||||
}
|
||||
}
|
||||
|
||||
function state()
|
||||
{
|
||||
}
|
||||
state.prototype =
|
||||
{
|
||||
mSucceeded: 0,
|
||||
mFailed: 0,
|
||||
mMixed: 0
|
||||
}
|
||||
function regressionStats()
|
||||
{
|
||||
}
|
||||
regressionStats.prototype =
|
||||
{
|
||||
QueryInterface: function(iid) {
|
||||
if (!iid.equals(Components.interfaces.nsISupports) &&
|
||||
!iid.equals(Components.interfaces.nsIRDFObserver))
|
||||
throw Components.results.NS_ERROR_NO_INTERFACE;
|
||||
|
||||
return this;
|
||||
},
|
||||
assertNewCount: function(aSource, aArc, aIncrement)
|
||||
{
|
||||
var count = 0;
|
||||
var parent = view.database.GetTarget(aSource, krTypeParent, true);
|
||||
while (parent) {
|
||||
var countRes = view.database.GetTarget(parent, aArc, true);
|
||||
if (countRes) {
|
||||
count = countRes.QueryInterface(nsIRDFInt).Value;
|
||||
}
|
||||
|
||||
var newCountRes = kRDFSvc.GetIntLiteral(count + aIncrement);
|
||||
if (!newCountRes) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (countRes) {
|
||||
view.database.Change(parent, aArc, countRes, newCountRes);
|
||||
}
|
||||
else {
|
||||
view.database.Assert(parent, aArc, newCountRes, true);
|
||||
}
|
||||
parent = view.database.GetTarget(parent, krTypeParent, true);
|
||||
}
|
||||
},
|
||||
onAssert: function(aDataSource, aSource, aProperty, aTarget)
|
||||
{
|
||||
if (aProperty.EqualsNode(krTypeOrigSucc)) {
|
||||
var arc = (aTarget.EqualsNode(kGood)) ? krTypeOrigSuccCount : krTypeOrigFailCount;
|
||||
this.assertNewCount(aSource, arc, 1);
|
||||
}
|
||||
else if (aProperty.Value.substr(0, 44) == "http://www.w3.org/1999/02/22-rdf-syntax-ns#_") {
|
||||
view.database.Assert(aTarget, krTypeParent, aSource, true);
|
||||
}
|
||||
},
|
||||
onUnassert: function(aDataSource, aSource, aProperty, aTarget)
|
||||
{
|
||||
if (aProperty.EqualsNode(krTypeSucc)) {
|
||||
var arc = (aTarget.EqualsNode(kGood)) ? krTypeSuccCount : krTypeFailCount;
|
||||
this.assertNewCount(aSource, arc, -1);
|
||||
}
|
||||
},
|
||||
onChange: function(aDataSource, aSource, aProperty, aOldTarget, aNewTarget)
|
||||
{
|
||||
},
|
||||
onMove: function(aDataSource, aOldSource, aNewSource, aProperty, aTarget)
|
||||
{
|
||||
},
|
||||
beginUpdateBatch: function(aDataSource)
|
||||
{
|
||||
},
|
||||
endUpdateBatch: function(aDataSource)
|
||||
{
|
||||
}
|
||||
}
|
||||
|
||||
function rdfObserve(aSubject, aTopic, aData)
|
||||
{
|
||||
if (aTopic == "success") {
|
||||
if (aData == "true") {
|
||||
view.database.Assert(aSubject, krTypeSucc, kGood, true);
|
||||
}
|
||||
else {
|
||||
view.database.Assert(aSubject, krTypeSucc, kBad, true);
|
||||
var target = (aData == "true") ? kGood : kBad;
|
||||
view.database.Assert(aSubject, krTypeSucc, target, true);
|
||||
|
||||
var parent = view.database.GetTarget(aSubject, krTypeParent, true);
|
||||
while (parent) {
|
||||
var count = 0;
|
||||
var arc = (aData == "true") ? krTypeSuccCount : krTypeFailCount;
|
||||
var countRes = view.database.GetTarget(parent, arc, true);
|
||||
if (countRes) {
|
||||
count = countRes.QueryInterface(nsIRDFInt).Value;
|
||||
}
|
||||
|
||||
var newCountRes = kRDFSvc.GetIntLiteral(++count);
|
||||
if (newCountRes) {
|
||||
if (countRes) {
|
||||
view.database.Change(parent, arc, countRes, newCountRes);
|
||||
}
|
||||
else {
|
||||
view.database.Assert(parent, arc, newCountRes, true);
|
||||
}
|
||||
}
|
||||
parent = view.database.GetTarget(parent, krTypeParent, true);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,32 +1,52 @@
|
|||
<?xml version="1.0"?>
|
||||
|
||||
<!--
|
||||
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.org.
|
||||
|
||||
The Initial Developer of the Original Code is Axel Hecht.
|
||||
Portions created by Axel Hecht are Copyright (C) 2001 Axel Hecht.
|
||||
All Rights Reserved.
|
||||
|
||||
Contributor(s):
|
||||
Axel Hecht <axel@pike.org> (Original Author)
|
||||
-->
|
||||
<!-- ***** BEGIN LICENSE BLOCK *****
|
||||
- Version: MPL 1.1/GPL 2.0/LGPL 2.1
|
||||
-
|
||||
- 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.org.
|
||||
-
|
||||
- The Initial Developer of the Original Code is Axel Hecht
|
||||
- Portions created by the Initial Developer are Copyright (C) 2002
|
||||
- the Initial Developer. All Rights Reserved.
|
||||
-
|
||||
- Contributor(s):
|
||||
- Axel Hecht <axel@pike.org> (Original Author)
|
||||
-
|
||||
- Alternatively, the contents of this file may be used under the terms of
|
||||
- either the GNU General Public License Version 2 or later (the "GPL"), or
|
||||
- the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
|
||||
- in which case the provisions of the GPL or the LGPL are applicable instead
|
||||
- of those above. If you wish to allow use of your version of this file only
|
||||
- under the terms of either the GPL or the LGPL, and not to allow others to
|
||||
- use your version of this file under the terms of the MPL, indicate your
|
||||
- decision by deleting the provisions above and replace them with the notice
|
||||
- and other provisions required by the LGPL or the GPL. If you do not delete
|
||||
- the provisions above, a recipient may use your version of this file under
|
||||
- the terms of any one of the MPL, the GPL or the LGPL.
|
||||
-
|
||||
- ***** END LICENSE BLOCK ***** -->
|
||||
|
||||
<?xml-stylesheet href="chrome://communicator/skin/" type="text/css"?>
|
||||
<?xml-stylesheet href="buster.css" type="text/css"?>
|
||||
|
||||
<?xul-overlay href="chrome://global/content/globalOverlay.xul"?>
|
||||
<?xul-overlay href="chrome://communicator/content/utilityOverlay.xul"?>
|
||||
|
||||
<window id="XalanBuster"
|
||||
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
|
||||
onload="onLoad()" onunload="onUnload()"
|
||||
title="Xalan testcase harness"
|
||||
persist="width,height"
|
||||
orient="vertical">
|
||||
<script type="application/x-javascript" src="buster-statics.js" />
|
||||
<script type="application/x-javascript" src="buster-test.js" />
|
||||
|
@ -46,8 +66,17 @@
|
|||
<command id="cmd_tst_run" oncommand="goDoCommand('cmd_tst_run')" />
|
||||
<command id="cmd_tst_runall" oncommand="goDoCommand('cmd_tst_runall')" />
|
||||
</commandset>
|
||||
<commandset id="commands">
|
||||
<command id="cmd_quit"/>
|
||||
<command id="cmd_close" oncommand="window.close();"/>
|
||||
</commandset>
|
||||
</commands>
|
||||
|
||||
<keyset>
|
||||
<key id="key_quit"/>
|
||||
<key id="key_close"/>
|
||||
</keyset>
|
||||
|
||||
<broadcasterset>
|
||||
<broadcaster id="obs_orig_success" hidden="true"/>
|
||||
<broadcaster id="not_yet" disabled="true"/>
|
||||
|
@ -55,12 +84,13 @@
|
|||
|
||||
|
||||
<menubar>
|
||||
<menu id="busterFile" label="File" accesskey="f">
|
||||
<menupopup id="file-popup">
|
||||
<menu id="menu_File" label="File" accesskey="f">
|
||||
<menupopup id="menu_FilePopup">
|
||||
<menuitem label="Save results ..." accesskey="s"
|
||||
observes="cmd_fl_save"/>
|
||||
<menuitem label="Import results ..." accesskey="i"
|
||||
observes="cmd_fl_import"/>
|
||||
<menuitem id="menu_close"/>
|
||||
</menupopup>
|
||||
</menu>
|
||||
<menu id="busterTests" label="Tests" accesskey="t">
|
||||
|
@ -74,7 +104,7 @@
|
|||
</menubar>
|
||||
|
||||
<popupset>
|
||||
<popup id="itemcontext">
|
||||
<popup id="itemcontext" onpopupshowing="return view.fillItemContext();">
|
||||
<menuitem label="View Test" oncommand="onNewResultView(event)"/>
|
||||
</popup>
|
||||
</popupset>
|
||||
|
@ -117,17 +147,16 @@
|
|||
</groupbox>
|
||||
<spacer flex="1" /></hbox>
|
||||
|
||||
<tree id="out" flex="1" flags="dont-build-content"
|
||||
datasources="rdf:null" ref="urn:root"
|
||||
context="itemcontext">
|
||||
<tree id="out" flex="1" flags="dont-build-content" hidecolumnpicker="true"
|
||||
datasources="rdf:null" ref="urn:root" context="itemcontext">
|
||||
<treecols>
|
||||
<treecol id="NameColumn" flex="1" label="Name" sort="?name"
|
||||
primary="true" />
|
||||
<splitter />
|
||||
primary="true" />
|
||||
<splitter class="tree-splitter" />
|
||||
<treecol id="PurpsColumn" flex="2" label="Purpose" sort="?purp" />
|
||||
<splitter />
|
||||
<splitter class="tree-splitter" />
|
||||
<treecol id="SuccessColumn" flex="0" label="Success" />
|
||||
<splitter observes="obs_orig_success" />
|
||||
<splitter class="tree-splitter" observes="obs_orig_success" />
|
||||
<treecol id="OrigSuccessColumn" flex="0" label="Previously"
|
||||
observes="obs_orig_success" />
|
||||
</treecols>
|
||||
|
@ -155,15 +184,14 @@
|
|||
|
||||
<action>
|
||||
<treechildren>
|
||||
<treeitem uri="?subheading" >
|
||||
<treeitem uri="?subheading">
|
||||
<treerow>
|
||||
<treecell ref="NameColumn" label="?name" />
|
||||
<treecell ref="PurpsColumn" label="?purp" />
|
||||
<treecell ref="SuccessColumn" label="?succ"
|
||||
properties="success ?succ"/>
|
||||
<treecell ref="OrigSuccessColumn" label="?orig_succ"
|
||||
properties="success ?orig_succ"
|
||||
/>
|
||||
properties="success ?orig_succ" />
|
||||
</treerow>
|
||||
</treeitem>
|
||||
</treechildren>
|
||||
|
@ -180,16 +208,27 @@
|
|||
predicate="http://home.netscape.com/NC-rdf#dir"
|
||||
object="?dir" />
|
||||
<binding subject="?subheading"
|
||||
predicate="http://home.netscape.com/NC-rdf#succ"
|
||||
predicate="http://home.netscape.com/NC-rdf#succCount"
|
||||
object="?succ" />
|
||||
<binding subject="?subheading"
|
||||
predicate="http://home.netscape.com/NC-rdf#failCount"
|
||||
object="?fail" />
|
||||
<binding subject="?subheading"
|
||||
predicate="http://home.netscape.com/NC-rdf#orig_succCount"
|
||||
object="?orig_succ" />
|
||||
<binding subject="?subheading"
|
||||
predicate="http://home.netscape.com/NC-rdf#orig_failCount"
|
||||
object="?orig_fail" />
|
||||
</bindings>
|
||||
|
||||
<action>
|
||||
<treechildren>
|
||||
<treeitem uri="?subheading" >
|
||||
<treeitem uri="?subheading">
|
||||
<treerow>
|
||||
<treecell ref="NameColumn" label="?dir" />
|
||||
<treecell ref="SuccessColumn" label="?succ" />
|
||||
<treecell ref="PurpsColumn" label="" />
|
||||
<treecell ref="SuccessColumn" label="?succ / ?fail" />
|
||||
<treecell ref="OrigSuccessColumn" label="?orig_succ / ?orig_fail" />
|
||||
</treerow>
|
||||
</treeitem>
|
||||
</treechildren>
|
||||
|
|
|
@ -0,0 +1,70 @@
|
|||
<?xml version="1.0"?>
|
||||
<!-- ***** BEGIN LICENSE BLOCK *****
|
||||
- Version: MPL 1.1/GPL 2.0/LGPL 2.1
|
||||
-
|
||||
- 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.org.
|
||||
-
|
||||
- The Initial Developer of the Original Code is
|
||||
- Netscape Communications Corporation.
|
||||
- Portions created by the Initial Developer are Copyright (C) 2002
|
||||
- the Initial Developer. All Rights Reserved.
|
||||
-
|
||||
- Contributor(s):
|
||||
- Peter Van der Beken <peterv@netscape.com> (original author)
|
||||
-
|
||||
- Alternatively, the contents of this file may be used under the terms of
|
||||
- either the GNU General Public License Version 2 or later (the "GPL"), or
|
||||
- the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
|
||||
- in which case the provisions of the GPL or the LGPL are applicable instead
|
||||
- of those above. If you wish to allow use of your version of this file only
|
||||
- under the terms of either the GPL or the LGPL, and not to allow others to
|
||||
- use your version of this file under the terms of the MPL, indicate your
|
||||
- decision by deleting the provisions above and replace them with the notice
|
||||
- and other provisions required by the LGPL or the GPL. If you do not delete
|
||||
- the provisions above, a recipient may use your version of this file under
|
||||
- the terms of any one of the MPL, the GPL or the LGPL.
|
||||
-
|
||||
- ***** END LICENSE BLOCK ***** -->
|
||||
|
||||
<!DOCTYPE overlay [
|
||||
<!ENTITY % dtd1 SYSTEM "chrome://inspector/locale/inspector.dtd"> %dtd1;
|
||||
<!ENTITY % dtd2 SYSTEM "chrome://inspector/content/util.dtd"> %dtd2;
|
||||
]>
|
||||
|
||||
<?xul-overlay href="chrome://inspector/content/commandOverlay.xul"?>
|
||||
<?xul-overlay href="chrome://inspector/content/keysetOverlay.xul"?>
|
||||
<?xul-overlay href="chrome://inspector/content/popupOverlay.xul"?>
|
||||
|
||||
<?xml-stylesheet href="chrome://inspector/skin/inspectorWindow.css"?>
|
||||
|
||||
<window class="color-dialog"
|
||||
title="&Inspector.title;"
|
||||
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
|
||||
|
||||
<script type="application/x-javascript" src="chrome://inspector/content/ViewerRegistry.js"/>
|
||||
<script type="application/x-javascript" src="chrome://inspector/content/utils.js"/>
|
||||
<script type="application/x-javascript" src="chrome://inspector/content/jsutil/xpcom/XPCU.js"/>
|
||||
<script type="application/x-javascript" src="chrome://inspector/content/jsutil/rdf/RDFU.js"/>
|
||||
<script type="application/x-javascript" src="chrome://inspector/content/jsutil/rdf/RDFArray.js"/>
|
||||
<script type="application/x-javascript" src="chrome://inspector/content/jsutil/events/ObserverManager.js"/>
|
||||
<script type="application/x-javascript" src="chrome://inspector/content/jsutil/xul/FrameExchange.js"/>
|
||||
|
||||
<commandset id="cmdsGlobalCommands"/>
|
||||
<keyset id="ksGlobalKeyset"/>
|
||||
<popupset id="ppsViewerPopupset"/>
|
||||
|
||||
<domi-panelset id="bxPanelSet" flex="1" viewercommandset="cmdsGlobalCommands">
|
||||
<domi-panel title="&bxDocPanel.title;" flex="1"/>
|
||||
</domi-panelset>
|
||||
|
||||
</window>
|
|
@ -10,3 +10,7 @@ button.close {
|
|||
iframe {
|
||||
padding-left: 10px;
|
||||
}
|
||||
|
||||
vbox.hidden {
|
||||
display: none;
|
||||
}
|
|
@ -37,10 +37,9 @@
|
|||
*
|
||||
* ***** END LICENSE BLOCK ***** */
|
||||
|
||||
var currentResultItem = new Object();
|
||||
|
||||
function onNewResultView(event)
|
||||
{
|
||||
dump("onNewResultView\n");
|
||||
const db = runItem.prototype.kDatabase;
|
||||
const kXalan = runItem.prototype.kXalan;
|
||||
var index = view.boxObject.selection.currentIndex;
|
||||
|
@ -57,21 +56,84 @@ function onNewResultView(event)
|
|||
path = path.QueryInterface(nsIRDFLiteral);
|
||||
xalan_fl = kXalan.resolve(cat.Value+"/"+path.Value);
|
||||
xalan_ref = kXalan.resolve(cat.Value+"-gold/"+path.Value);
|
||||
var currentResultItem = new Object();
|
||||
currentResultItem.testpath = xalan_fl;
|
||||
currentResultItem.refpath = xalan_ref;
|
||||
dump(name.Value+" links to "+xalan_fl+"\n");
|
||||
var win = window.openDialog('result-view.xul','txBusterResult',
|
||||
'chrome,width=800,height=800,dialog=no',
|
||||
currentResultItem);
|
||||
var currentRunItem = itemCache.getItem(res);
|
||||
// XXX todo, keep a list of these windows, so that we can close them.
|
||||
resultWin = window.openDialog('result-view.xul','_blank',
|
||||
'chrome,resizable,dialog=no',
|
||||
currentResultItem, currentRunItem);
|
||||
}
|
||||
|
||||
var refInspector;
|
||||
var resInspector;
|
||||
|
||||
function onResultViewLoad(event)
|
||||
{
|
||||
var arg = window.arguments[0];
|
||||
document.getElementById('src').setAttribute('src', 'view-source:'+
|
||||
arg.testpath+'.xml');
|
||||
document.getElementById('style').setAttribute('src', 'view-source:'+
|
||||
arg.testpath+'.xsl');
|
||||
document.getElementById('ref').setAttribute('src', arg.refpath+'.out');
|
||||
dump("onResultViewLoad\n");
|
||||
aResultItem = window.arguments[0];
|
||||
aRunItem = window.arguments[1];
|
||||
var loadFlags = Components.interfaces.nsIWebNavigation.LOAD_FLAGS_NONE;
|
||||
document.getElementById('src').webNavigation.loadURI('view-source:'+
|
||||
aResultItem.testpath+'.xml', loadFlags, null, null, null);
|
||||
document.getElementById('style').webNavigation.loadURI('view-source:'+
|
||||
aResultItem.testpath+'.xsl', loadFlags, null, null, null);
|
||||
|
||||
if (aRunItem && aRunItem.mRefDoc && aRunItem.mResDoc) {
|
||||
document.getElementById("refSourceBox").setAttribute("class", "hidden");
|
||||
refInspector = new ObjectApp();
|
||||
refInspector.initialize("refInsp", aRunItem.mRefDoc);
|
||||
resInspector = new ObjectApp();
|
||||
resInspector.initialize("resInsp", aRunItem.mResDoc);
|
||||
}
|
||||
else {
|
||||
document.getElementById("inspectorBox").setAttribute("class", "hidden");
|
||||
document.getElementById('ref').webNavigation.loadURI('view-source:'+
|
||||
aResultItem.refpath+'.out', loadFlags, null, null, null);
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
function onResultViewUnload(event)
|
||||
{
|
||||
dump("onResultUnload\n");
|
||||
}
|
||||
|
||||
function ObjectApp()
|
||||
{
|
||||
}
|
||||
|
||||
ObjectApp.prototype =
|
||||
{
|
||||
mDoc: null,
|
||||
mPanelSet: null,
|
||||
|
||||
initialize: function(aId, aDoc)
|
||||
{
|
||||
this.mDoc = aDoc;
|
||||
this.mPanelSet = document.getElementById(aId).contentDocument.getElementById("bxPanelSet");
|
||||
this.mPanelSet.addObserver("panelsetready", this, false);
|
||||
this.mPanelSet.initialize();
|
||||
},
|
||||
|
||||
doViewerCommand: function(aCommand)
|
||||
{
|
||||
this.mPanelSet.execCommand(aCommand);
|
||||
},
|
||||
|
||||
getViewer: function(aUID)
|
||||
{
|
||||
return this.mPanelSet.registry.getViewerByUID(aUID);
|
||||
},
|
||||
|
||||
onEvent: function(aEvent)
|
||||
{
|
||||
switch (aEvent.type) {
|
||||
case "panelsetready":
|
||||
{
|
||||
this.mPanelSet.getPanel(0).subject = this.mDoc;
|
||||
}
|
||||
}
|
||||
}
|
||||
};
|
||||
|
|
|
@ -1,39 +1,53 @@
|
|||
<?xml version="1.0"?>
|
||||
|
||||
<!--
|
||||
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.org.
|
||||
|
||||
The Initial Developer of the Original Code is Axel Hecht.
|
||||
Portions created by Axel Hecht are Copyright (C) 2002 Axel Hecht.
|
||||
All Rights Reserved.
|
||||
|
||||
Contributor(s):
|
||||
Axel Hecht <axel@pike.org> (Original Author)
|
||||
-->
|
||||
<!-- ***** BEGIN LICENSE BLOCK *****
|
||||
- Version: MPL 1.1/GPL 2.0/LGPL 2.1
|
||||
-
|
||||
- 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.org.
|
||||
-
|
||||
- The Initial Developer of the Original Code is Axel Hecht
|
||||
- Portions created by the Initial Developer are Copyright (C) 2002
|
||||
- the Initial Developer. All Rights Reserved.
|
||||
-
|
||||
- Contributor(s):
|
||||
- Axel Hecht <axel@pike.org> (Original Author)
|
||||
-
|
||||
- Alternatively, the contents of this file may be used under the terms of
|
||||
- either the GNU General Public License Version 2 or later (the "GPL"), or
|
||||
- the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
|
||||
- in which case the provisions of the GPL or the LGPL are applicable instead
|
||||
- of those above. If you wish to allow use of your version of this file only
|
||||
- under the terms of either the GPL or the LGPL, and not to allow others to
|
||||
- use your version of this file under the terms of the MPL, indicate your
|
||||
- decision by deleting the provisions above and replace them with the notice
|
||||
- and other provisions required by the LGPL or the GPL. If you do not delete
|
||||
- the provisions above, a recipient may use your version of this file under
|
||||
- the terms of any one of the MPL, the GPL or the LGPL.
|
||||
-
|
||||
- ***** END LICENSE BLOCK ***** -->
|
||||
|
||||
<?xml-stylesheet href="chrome://communicator/skin/" type="text/css"?>
|
||||
<?xml-stylesheet href="result-view.css" type="text/css"?>
|
||||
|
||||
<window id="buster-result-view"
|
||||
<window id="buster-result-view" title="Xalan testcase details"
|
||||
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
|
||||
orient="vertical"
|
||||
onload="onResultViewLoad()">
|
||||
orient="vertical" persist="width height"
|
||||
onload="onResultViewLoad()" onunload="onResultViewUnload()">
|
||||
<script type="application/x-javascript" src="DumpDOM.js" />
|
||||
<script type="application/x-javascript" src="buster-statics.js" />
|
||||
<script type="application/x-javascript" src="buster-test.js" />
|
||||
<script type="application/x-javascript" src="result-view.js" />
|
||||
<script>
|
||||
</script>
|
||||
|
||||
<hbox>
|
||||
<button class="close" label="close this window"
|
||||
oncommand="window.close()" />
|
||||
|
@ -46,8 +60,20 @@
|
|||
<label class="heading" value="XSL Source:" />
|
||||
<iframe flex="1" id="style" />
|
||||
</vbox>
|
||||
<vbox flex="1">
|
||||
<vbox flex="1" id="refSourceBox">
|
||||
<label class="heading" value="Reference Source:" />
|
||||
<iframe flex="1" id="ref" />
|
||||
</vbox>
|
||||
<vbox flex="2" id="inspectorBox">
|
||||
<hbox flex="1">
|
||||
<vbox flex="1">
|
||||
<label class="heading" value="Reference" />
|
||||
<iframe flex="1" id="refInsp" src="result-inspector.xul" />
|
||||
</vbox>
|
||||
<vbox flex="1">
|
||||
<label class="heading" value="Result" />
|
||||
<iframe flex="1" id="resInsp" src="result-inspector.xul" />
|
||||
</vbox>
|
||||
</hbox>
|
||||
</vbox>
|
||||
</window>
|
||||
|
|
|
@ -0,0 +1,28 @@
|
|||
<?xml version="1.0"?>
|
||||
<RDF:RDF xmlns:RDF="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:chrome="http://www.mozilla.org/rdf/chrome#">
|
||||
|
||||
<!-- list all the packages being supplied by this jar -->
|
||||
<RDF:Seq about="urn:mozilla:package:root">
|
||||
<RDF:li resource="urn:mozilla:package:xslt-qa"/>
|
||||
</RDF:Seq>
|
||||
|
||||
<!-- package information -->
|
||||
<RDF:Description about="urn:mozilla:package:xslt-qa"
|
||||
chrome:displayName="XSLT QA Tools"
|
||||
chrome:author="mozilla.org"
|
||||
chrome:name="xslt-qa"
|
||||
chrome:localeVersion="1.1a"
|
||||
chrome:skinVersion="1.0">
|
||||
</RDF:Description>
|
||||
|
||||
<!-- overlay information -->
|
||||
<RDF:Seq about="urn:mozilla:overlays">
|
||||
<RDF:li resource="chrome://navigator/content/navigatorOverlay.xul"/>
|
||||
</RDF:Seq>
|
||||
|
||||
<RDF:Seq about="chrome://navigator/content/navigatorOverlay.xul">
|
||||
<RDF:li>chrome://xslt-qa/content/xslt-qa-overlay.xul</RDF:li>
|
||||
</RDF:Seq>
|
||||
|
||||
</RDF:RDF>
|
|
@ -0,0 +1,17 @@
|
|||
xslt-qa.jar:
|
||||
content/xslt-qa/contents.rdf (contents.rdf)
|
||||
content/xslt-qa/xslt-qa-overlay.xul (xslt-qa-overlay.xul)
|
||||
content/xslt-qa/xslt-qa-overlay.js (xslt-qa-overlay.js)
|
||||
content/xslt-qa/buster/buster.xul (buster/buster.xul)
|
||||
content/xslt-qa/buster/buster.css (buster/buster.css)
|
||||
content/xslt-qa/buster/buster-statics.js (buster/buster-statics.js)
|
||||
content/xslt-qa/buster/buster-handlers.js (buster/buster-handlers.js)
|
||||
content/xslt-qa/buster/buster-files.js (buster/buster-files.js)
|
||||
content/xslt-qa/buster/buster-test.js (buster/buster-test.js)
|
||||
content/xslt-qa/buster/buster-view.js (buster/buster-view.js)
|
||||
content/xslt-qa/buster/result-view.xul (buster/result-view.xul)
|
||||
content/xslt-qa/buster/result-inspector.xul (buster/result-inspector.xul)
|
||||
content/xslt-qa/buster/result-view.css (buster/result-view.css)
|
||||
content/xslt-qa/buster/result-view.js (buster/result-view.js)
|
||||
content/xslt-qa/buster/DumpDOM.js (buster/DumpDOM.js)
|
||||
content/xslt-qa/buster/DiffDOM.js (buster/DiffDOM.js)
|
Загрузка…
Ссылка в новой задаче