Subversion Repositories Applications.papyrus

Rev

Blame | Last modification | View Log | RSS feed

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