gecko/content/xul/templates/tests/chrome/test_tmpl_xmlquerywithmultiplequeries.xul

72 lines
2.0 KiB
Plaintext
Raw Normal View History

<?xml version="1.0"?>
<?xml-stylesheet href="chrome://global/skin" type="text/css"?>
<?xml-stylesheet href="chrome://mochikit/content/tests/SimpleTest/test.css" type="text/css"?>
<!--
xml query with multiple queries
-->
<window title="XUL Template Tests" width="500" height="600"
onload="test_template();"
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
<script type="application/javascript"
src="chrome://mochikit/content/MochiKit/packed.js"></script>
<script type="application/javascript"
src="chrome://mochikit/content/tests/SimpleTest/SimpleTest.js"></script>
<body xmlns="http://www.w3.org/1999/xhtml" style="height: 300px; overflow: auto;"/>
<script src="templates_shared.js"/>
<script>
<![CDATA[
SimpleTest.waitForExplicitFinish();
var testid ="xml query with multiple queries";
var queryType = "xml";
var isTreeBuilder = false;
var needsOpen = false;
var notWorkingYet = false;
var notWorkingYetDynamic = false;
var expectedOutput =
<output>
<button anyid="true" label="(Dromaius novaehollandiae) is a large bird"/>
<button anyid="true" label="(Tyto alba) Barn Owl"/>
<button anyid="true" label="(Corvus corax) Raven"/>
<label anyid="true" value="Chameleon"/>
</output>;
var changes = [];
]]>
</script>
<vbox xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" id="root" datasources="animals.xml" querytype="xml" ref=".">
<template>
<queryset>
<query expr="class[position()&gt;1]/species">
<assign var="?id" expr="concat('(', @id, ')')"/>
</query>
<rule>
<where subject="?id" rel="equals" value="(Dromaius novaehollandiae)"/>
<action>
<button uri="?" label="?id is a large bird"/>
</action>
</rule>
<rule>
<binding subject="?" predicate="@name" object="?name"/>
<action>
<button uri="?" label="?id ?name"/>
</action>
</rule>
</queryset>
<queryset>
<query expr="class[name/text()='Reptiles']/species"/>
<action>
<label uri="?" value="?name"/>
</action>
</queryset>
</template>
</vbox>
</window>