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

84 lines
2.3 KiB
HTML

<html>
<head>
<title>Test Service</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.Service");
dojo.require("dojo.parser");
dojo.require("doh.runner");
dojo.require("dojox.wire.ml.Service");
dojo.require("dojox.wire.ml.Invocation");
dojo.require("dojox.wire.ml.Transfer");
dojox.wire.ml.tests.markup.Service = {
query: {name: "a"}
};
dojo.addOnLoad(function(){
doh.register("dojox.wire.ml.tests.markup.Service", [
function test_Service_url(t){
var d = new doh.Deferred();
dojo.connect(dijit.byId("Invocation1"), "onComplete", function(result){
t.assertEqual("a", dojox.wire.ml.tests.markup.Service.target.a);
var o = result.toObject();
t.assertEqual("a", o.item.name); // test XmlElement.toObject()
t.assertEqual("b", o.item.data); // test XmlElement.toObject()
d.callback(true);
});
dojo.connect(dijit.byId("Invocation1"), "onError", function(error){
d.errback(error);
});
dojo.publish("invokeGetXml");
return d;
},
function test_Service_serviceUrl(t){
var d = new doh.Deferred();
dojo.connect(dijit.byId("Invocation2"), "onComplete", function(){
t.assertEqual("a", dojox.wire.ml.tests.markup.Service.result.item.name);
d.callback(true);
});
dojo.connect(dijit.byId("Invocation2"), "onError", function(error){
d.errback(error);
});
dojo.publish("invokeGetJson");
return d;
}
]);
doh.run();
});
</script>
</head>
<body>
<div dojoType="dojox.wire.ml.Service"
id="Service1"
url="Service/XML.smd"></div>
<div dojoType="dojox.wire.ml.Invocation"
id="Invocation1"
triggerTopic="invokeGetXml"
object="Service1"
method="get"
parameters="dojox.wire.ml.tests.markup.Service.query">
</div>
<div dojoType="dojox.wire.ml.Transfer"
trigger="Invocation1"
triggerEvent="onComplete"
source="arguments[0].item.name"
target="dojox.wire.ml.tests.markup.Service.target.a"></div>
<div dojoType="dojox.wire.ml.Service"
id="Service2"
serviceType="JSON"
serviceUrl="Service/{name}.json"></div>
<div dojoType="dojox.wire.ml.Invocation"
id="Invocation2"
triggerTopic="invokeGetJson"
object="Service2"
method="get"
parameters="dojox.wire.ml.tests.markup.Service.query"
result="dojox.wire.ml.tests.markup.Service.result"></div>
</body>
</html>