SemanticScuttle/includes/js/dojox/wire/tests/markup/Transfer.html

157 lines
5.5 KiB
HTML

<html>
<head>
<title>Test Transfer</title>
<script type="text/javascript" src="../../../../dojo/dojo.js" djConfig="isDebug: true, parseOnLoad: true"></script>
<script type="text/javascript">
dojo.provide("dojox.wire.ml.tests.markup.Transfer");
dojo.require("dojo.parser");
dojo.require("doh.runner");
dojo.require("dojox.data.dom");
dojo.require("dojox.data.XmlStore");
dojo.require("dojox.wire.ml.Action");
dojo.require("dojox.wire.ml.Transfer");
dojox.wire.ml.tests.markup.Transfer = {
source: {a: "A", b: "B", c: [
{d: "D1", e: "E1"},
{d: "D2", e: "E2"}
]}
};
dojo.addOnLoad(function(){
doh.register("dojox.wire.ml.tests.markup.Transfer", [
function test_Transfer_attribute(t){
dojox.wire.ml.tests.markup.Transfer.store = new dojox.data.XmlStore();
dojox.wire.ml.tests.markup.Transfer.item = dojox.wire.ml.tests.markup.Transfer.store.newItem({tagName: "x"});
dojox.wire.ml.tests.markup.Transfer.target = {};
dojo.publish("transferData");
t.assertEqual(dojox.wire.ml.tests.markup.Transfer.source.a, dojox.wire.ml.tests.markup.Transfer.target.a);
},
function test_Transfer_path(t){
dojox.wire.ml.tests.markup.Transfer.element = dojox.data.dom.createDocument().createElement("x");
dojox.wire.ml.tests.markup.Transfer.target = {};
dojo.publish("transferXml");
t.assertEqual(dojox.wire.ml.tests.markup.Transfer.source.a, dojox.wire.ml.tests.markup.Transfer.target.a);
},
function test_ChildWire(t){
dojox.wire.ml.tests.markup.Transfer.target = {};
dojo.publish("transferComposite");
t.assertEqual(dojox.wire.ml.tests.markup.Transfer.source.a, dojox.wire.ml.tests.markup.Transfer.target.c);
t.assertEqual(dojox.wire.ml.tests.markup.Transfer.source.b, dojox.wire.ml.tests.markup.Transfer.target.d);
},
function test_ColumnWire(t){
dojox.wire.ml.tests.markup.Transfer.target = {};
dojo.publish("transferTable");
t.assertEqual(dojox.wire.ml.tests.markup.Transfer.source.c[0].d, dojox.wire.ml.tests.markup.Transfer.target.a[0].b);
t.assertEqual(dojox.wire.ml.tests.markup.Transfer.source.c[1].e, dojox.wire.ml.tests.markup.Transfer.target.a[1].c);
},
function test_NodeWire(t){
dojox.wire.ml.tests.markup.Transfer.target = {};
dojo.publish("transferTree");
t.assertEqual(dojox.wire.ml.tests.markup.Transfer.source.c[0].d, dojox.wire.ml.tests.markup.Transfer.target.a[0].title);
t.assertEqual(dojox.wire.ml.tests.markup.Transfer.source.c[1].e, dojox.wire.ml.tests.markup.Transfer.target.a[1].children[0].title);
},
function test_SegimentWire(t){
dojox.wire.ml.tests.markup.Transfer.target = {};
dojo.publish("transferText");
t.assertEqual("A/B", dojox.wire.ml.tests.markup.Transfer.target.c);
}
]);
doh.run();
});
</script>
</head>
<body>
<div dojoType="dojox.wire.ml.Action"
triggerTopic="transferData">
<div dojoType="dojox.wire.ml.Transfer"
source="dojox.wire.ml.tests.markup.Transfer.source.a"
target="dojox.wire.ml.tests.markup.Transfer.item"
targetStore="dojox.wire.ml.tests.markup.Transfer.store"
targetAttribute="y"></div>
<div dojoType="dojox.wire.ml.Transfer"
source="dojox.wire.ml.tests.markup.Transfer.item"
sourceStore="dojox.wire.ml.tests.markup.Transfer.store"
sourceAttribute="y"
target="dojox.wire.ml.tests.markup.Transfer.target.a"></div>
</div>
<div dojoType="dojox.wire.ml.Action"
triggerTopic="transferXml">
<div dojoType="dojox.wire.ml.Transfer"
source="dojox.wire.ml.tests.markup.Transfer.source.a"
target="dojox.wire.ml.tests.markup.Transfer.element"
targetPath="y/text()"></div>
<div dojoType="dojox.wire.ml.Transfer"
source="dojox.wire.ml.tests.markup.Transfer.element"
sourcePath="y/text()"
target="dojox.wire.ml.tests.markup.Transfer.target.a"></div>
<div dojoType="dojox.wire.ml.Transfer"
source="dojox.wire.ml.tests.markup.Transfer.source.b"
target="dojox.wire.ml.tests.markup.Transfer.element"
targetPath="y/@z"></div>
<div dojoType="dojox.wire.ml.Transfer"
source="dojox.wire.ml.tests.markup.Transfer.element"
sourcePath="y/@z"
target="dojox.wire.ml.tests.markup.Transfer.target.b"></div>
</div>
<div dojoType="dojox.wire.ml.Transfer"
triggerTopic="transferComposite"
source="dojox.wire.ml.tests.markup.Transfer.source"
target="dojox.wire.ml.tests.markup.Transfer.target">
<div dojoType="dojox.wire.ml.ChildWire"
name="x"
property="a"></div>
<div dojoType="dojox.wire.ml.ChildWire"
which="source"
name="y"
property="b"></div>
<div dojoType="dojox.wire.ml.ChildWire"
which="target"
name="x"
property="c"></div>
<div dojoType="dojox.wire.ml.ChildWire"
which="target"
name="y"
property="d"></div>
</div>
<div dojoType="dojox.wire.ml.Transfer"
triggerTopic="transferTable"
source="dojox.wire.ml.tests.markup.Transfer.source.c"
target="dojox.wire.ml.tests.markup.Transfer.target.a">
<div dojoType="dojox.wire.ml.ColumnWire"
column="b"
property="d"></div>
<div dojoType="dojox.wire.ml.ColumnWire"
column="c"
property="e"></div>
</div>
<div dojoType="dojox.wire.ml.Transfer"
triggerTopic="transferTree"
source="dojox.wire.ml.tests.markup.Transfer.source.c"
target="dojox.wire.ml.tests.markup.Transfer.target.a">
<div dojoType="dojox.wire.ml.NodeWire"
titleProperty="d">
<div dojoType="dojox.wire.ml.NodeWire"
titleProperty="e"></div>
</div>
</div>
<div dojoType="dojox.wire.ml.Transfer"
triggerTopic="transferText"
source="dojox.wire.ml.tests.markup.Transfer.source"
delimiter="/"
target="dojox.wire.ml.tests.markup.Transfer.target.c">
<div dojoType="dojox.wire.ml.SegmentWire"
property="a"></div>
<div dojoType="dojox.wire.ml.SegmentWire"
property="b"></div>
</div>
</body>
</html>