Ejemplo n.º 1
0
        private void TestHelper(IObjectFactory factory, SessionHandler handler)
        {
            MockRepository mocks = new MockRepository();

            ISession session = mocks.StrictMock<ISession>();
            JsBridge bridge = new JsBridge(session, factory);
            HostedMode.Host = bridge;
            SessionHelper helper = new SessionHelper(bridge, session);
            using (mocks.Ordered()) {
                handler(helper);
            }
            mocks.ReplayAll();

            bridge.DispatchForever();

            mocks.VerifyAll();
        }
Ejemplo n.º 2
0
        private void SimulateAction(SessionHelper session, Type nativeType, string name, JsValueType retType, ref int remoteId, params int[] args)
        {
            var action = session.DefineFunctionMessage(nativeType.GetMethod(name));
            session.InvokeFunctionMessage(action.Name, 0);
            var id = ++remoteId;
            session.OnReturnMessage(false, JsValueType.JsObject, id);

            JsValue[] wrapped = args.Select(x => new JsValue(x)).ToArray();
            session.InvokeDelegateMessage(id, wrapped);

            session.OnReturnMessage(false, retType, null);
        }