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:
axel%pike.org 2002-07-15 19:51:27 +00:00
Родитель bbbe940ae9
Коммит 777e704d31
14 изменённых файлов: 496 добавлений и 85 удалений

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

@ -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)

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

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

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