diff options
Diffstat (limited to 'js/test/Ice/exceptions/ClientBidir.js')
-rw-r--r-- | js/test/Ice/exceptions/ClientBidir.js | 101 |
1 files changed, 101 insertions, 0 deletions
diff --git a/js/test/Ice/exceptions/ClientBidir.js b/js/test/Ice/exceptions/ClientBidir.js new file mode 100644 index 00000000000..601437862a0 --- /dev/null +++ b/js/test/Ice/exceptions/ClientBidir.js @@ -0,0 +1,101 @@ +// ********************************************************************** +// +// Copyright (c) 2003-2016 ZeroC, Inc. All rights reserved. +// +// This copy of Ice is licensed to you under the terms described in the +// ICE_LICENSE file included in this distribution. +// +// ********************************************************************** + +(function(module, require, exports) +{ + var Ice = require("ice").Ice; + var Test = require("Test").Test; + var Client = require("Client"); + var ThrowerI = require("ThrowerI").ThrowerI; + var AMDThrowerI = require("AMDThrowerI").AMDThrowerI; + + var Promise = Ice.Promise; + + var allTests = function(out, communicator, amd) + { + return Promise.try( + function() + { + return communicator.createObjectAdapter("").then( + function(adapter) + { + if(amd) + { + adapter.add(new AMDThrowerI(), Ice.stringToIdentity("thrower")); + } + else + { + adapter.add(new ThrowerI(), Ice.stringToIdentity("thrower")); + } + var base = communicator.stringToProxy("thrower:default -p 12010"); + return base.ice_getConnection().then( + function(conn) + { + conn.setAdapter(adapter); + return Client.__clientAllTests__(out, communicator, Test, true); + }); + }); + }); + }; + + var run = function(out, id) + { + id.properties.setProperty("Ice.MessageSizeMax", "10"); + id.properties.setProperty("Ice.Warn.Dispatch", "0"); + id.properties.setProperty("Ice.Warn.Connections", "0"); + var communicator = Ice.initialize(id); + return Promise.try( + function() + { + out.writeLine("testing bidir callbacks with synchronous dispatch..."); + return allTests(out, communicator, false); + } + ).then( + function() + { + return communicator.destroy(); + } + ).then( + function() + { + communicator = Ice.initialize(id); + out.writeLine("testing bidir callbacks with asynchronous dispatch..."); + return allTests(out, communicator, true); + } + ).then( + function() + { + return communicator.destroy(); + } + ).then( + function() + { + communicator = Ice.initialize(id); + var ref = "__echo:default -p 12010"; + var base = communicator.stringToProxy(ref); + return Test.EchoPrx.checkedCast(base); + } + ).then( + function(prx) + { + return prx.shutdown(); + } + ).finally( + function() + { + return communicator.destroy(); + } + ); + }; + exports.__testBidir__ = run; + exports.__runEchoServerOptions__ = ["Ice.Warn.Dispatch=0", "Ice.Warn.Connections=0"]; +} +(typeof(global) !== "undefined" && typeof(global.process) !== "undefined" ? module : undefined, + typeof(global) !== "undefined" && typeof(global.process) !== "undefined" ? require : this.Ice.__require, + typeof(global) !== "undefined" && typeof(global.process) !== "undefined" ? exports : this)); |