Ejemplo n.º 1
0
        protected async Task CallUnregisteredServiceCore(JsonServer js, JsonClient jc, ICredentials credentials = null)
        {
            // event handlers
            var connected    = 0;
            var disconnected = 0;

            js.ClientConnected    += (s, e) => connected++;
            js.ClientDisconnected += (s, e) => disconnected++;
            js.UnhandledException += (s, e) => Assert.Fail($"Unhandled server exception: {e.Exception}. Connected: {connected}, disconnected: {disconnected}.");
            jc.UnhandledException += (s, e) => Assert.Fail($"Unhandled client exception: {e.Exception}. Connected: {connected}, disconnected: {disconnected}.");

            // start json server and connect the client
            js.Start();
            await jc.ConnectAsync(credentials);

            // call UnregisteredService
            var msg = new UnregisteredService();
            var ex  = Assert.ThrowsAsync <MethodNotFoundException>(async() =>
                                                                   await Assert_NotTimedOut(jc.Call(msg), "jc.Call(UnregisteredService)"));

            Assert.AreEqual(MethodNotFoundException.ErrorCode, ex.Code);

            // make sure all incoming messages are processed
            Assert.AreEqual(0, jc.PendingMessages.Count);
        }
Ejemplo n.º 2
0
 public TestHandlerWithMultipleArguments(ResponseContext responseContext,
                                         UnregisteredService service,
                                         TestOptions options,
                                         int somethingElse)
 {
     ResponseContext = responseContext;
     Service         = service;
     Options         = options;
     SomethingElse   = somethingElse;
 }