Esempio n. 1
0
        public static void Test_Session_Throws_Null_Arg_OnRequestRecieve_When_Payload_Is_Null()
        {
            //arrange
            AuthServiceClientPeer session = new AuthServiceClientPeer(Mock.Of <ILog>(), Mock.Of <INetworkMessageRouterService>(),
                                                                      new Mock <IConnectionDetails>(MockBehavior.Loose).Object, Mock.Of <INetworkMessageSubscriptionService>(), Mock.Of <IDisconnectionServiceHandler>(), Mock.Of <INetworkMessageRouteBackService>(), Mock.Of <IResponseMessageHandlerService <AuthServiceClientPeer> >());

            //assert
            Assert.Throws <ArgumentNullException>(() => GrabProtectedOnRecieveResponseMethod(session).Invoke(null, Mock.Of <IMessageParameters>()));
        }
Esempio n. 2
0
        public static void Test_Session_Does_Process_Encrypted_Messages()
        {
            //arrange
            Mock <IResponseMessageHandlerService <AuthServiceClientPeer> > handler = new Mock <IResponseMessageHandlerService <AuthServiceClientPeer> >(MockBehavior.Loose);
            AuthServiceClientPeer session = new AuthServiceClientPeer(Mock.Of <ILog>(), Mock.Of <INetworkMessageRouterService>(),
                                                                      new Mock <IConnectionDetails>(MockBehavior.Loose).Object, Mock.Of <INetworkMessageSubscriptionService>(), Mock.Of <IDisconnectionServiceHandler>(), Mock.Of <INetworkMessageRouteBackService>(), handler.Object);
            Mock <IMessageParameters> messageParameters = new Mock <IMessageParameters>();

            messageParameters.SetupGet(mp => mp.Encrypted).Returns(true);

            //act
            //Generate and bind a method to a delegate
            Action <IResponseMessage, IMessageParameters> method = GrabProtectedOnRecieveResponseMethod(session);

            method.Invoke(Mock.Of <IResponseMessage>(), messageParameters.Object);

            //assert
            //Make sure the message didn't make it to the handler
            handler.Verify(x => x.TryProcessMessage(It.IsAny <IResponseMessage>(), It.IsAny <IMessageParameters>(), session), Times.Once());
        }
Esempio n. 3
0
        //TODO: When message parameters are implemented in the GladNet.ASP.Client implementation we should start null checking them.

        /*[Test]
         * public static void Test_Session_Throws_Null_Arg_OnRequestRecieve_When_MessageParameters_Is_Null()
         * {
         *      //arrange
         *      AuthServiceClientPeer session = new AuthServiceClientPeer(Mock.Of<ILog>(), Mock.Of<INetworkMessageSender>(),
         *              new Mock<IConnectionDetails>(MockBehavior.Loose).Object, Mock.Of<INetworkMessageSubscriptionService>(), Mock.Of<IDisconnectionServiceHandler>(), Mock.Of<IResponsePayloadHandlerService<AuthServiceClientPeer>>());
         *
         *      //assert
         *      Assert.Throws<ArgumentNullException>(() => GrabProtectedOnRecieveRequestMethod(session).Invoke(Mock.Of<PacketPayload>(), null));
         * }*/

        public static Action <IResponseMessage, IMessageParameters> GrabProtectedOnRecieveResponseMethod(AuthServiceClientPeer session)
        {
            return(Delegate.CreateDelegate(typeof(Action <IResponseMessage, IMessageParameters>), session, session.GetType().GetMethod("OnReceiveResponse", System.Reflection.BindingFlags.NonPublic | System.Reflection.BindingFlags.Instance | System.Reflection.BindingFlags.Public, null, new Type[] { typeof(IResponseMessage), typeof(IMessageParameters) }, null)) as Action <IResponseMessage, IMessageParameters>);
        }