Exemplo n.º 1
0
        public static SignalContainer CreateSignalPanel(BindingForm form)
        {
            long            guid      = form.GUISignalContainerId;
            SignalContainer container = CreateSignalPanel(guid, "Signals for Window " + form.Id, form.Signals);

            form.GUISignalContainerId = container.ID;
            return(container);
        }
Exemplo n.º 2
0
        public static SignalContainer CreateSignalPanel(BindingWidget widget)
        {
            long            guid      = widget.GUISignalContainerId;
            SignalContainer container = CreateSignalPanel(guid, "Signals for Widget " + widget.Id, widget.Signals);

            widget.GUISignalContainerId = container.ID;

            return(container);
        }
Exemplo n.º 3
0
        public void TestEventSystemSimplePasses()
        {
            // Use the Assert class to test conditions
            ISignalContainer signalContainer = new SignalContainer();

            signalContainer.AddListener <TestSignal>(OnRevTestSignal);

            signalContainer.DispatchSignal(new TestSignal {
                Msg = "test"
            });

            LogAssert.Expect(LogType.Log, "test");
        }
Exemplo n.º 4
0
        public void InvokeWithCallback() {
            // Arrange
            ObjectAsyncResult<int> oar = new ObjectAsyncResult<int>(42);

            SignalContainer<IAsyncResult> callbackContainer = new SignalContainer<IAsyncResult>();
            AsyncCallback callback = ar => {
                callbackContainer.Signal(ar);
            };

            // Act
            IAsyncResult asyncResult = oar.BeginInvoke(callback, "some state");
            IAsyncResult passedToCallback = callbackContainer.Wait();
            int returned = oar.EndInvoke(asyncResult);

            // Assert
            Assert.AreEqual(asyncResult, passedToCallback);
            Assert.AreEqual("some state", asyncResult.AsyncState);
            Assert.AreEqual(42, returned);
        }
Exemplo n.º 5
0
        private static SignalContainer CreateSignalPanel(long GUId, string text, BindingSource source)
        {
            if (GUId < 0)
            {
                // Non è stato ancora creato il pannello relativo al widget
                SignalContainer signalContainer = new SignalContainer();
                signalContainer.Text = text;
                signalContainer.Show(GuiManager.dockPanel, DockState.DockRight);
                signalContainer.SetDataSource(source);
                SignalContainerList.Add(signalContainer);

                return(signalContainer);
            }
            else
            {
                //Search for the WidgetContainer with GUIContainerId
                SignalContainer container = SignalContainerList.Find(obj => obj.ID == GUId);
                container.Show();
                return(container);
            }
        }
        public void Execute() {
            // Arrange
            Mock<ControllerContext> mockControllerContext = new Mock<ControllerContext>();
            mockControllerContext.Expect(c => c.Controller).Returns(new ExecuteController());
            ControllerContext controllerContext = mockControllerContext.Object;

            Dictionary<string, object> parameters = new Dictionary<string, object>(){
                { "id", 42 }
            };

            ReflectedDelegatePatternActionDescriptor ad = GetActionDescriptor(_actionMethod);

            SignalContainer<object> resultContainer = new SignalContainer<object>();
            AsyncCallback callback = ar => {
                object o = ad.EndExecute(ar);
                resultContainer.Signal(o);
            };

            // Act
            ad.BeginExecute(controllerContext, parameters, callback, null);
            object retVal = resultContainer.Wait();

            // Assert
            Assert.AreEqual(84, retVal);
        }
        public static object ExecuteHelper(TaskAsyncActionDescriptor actionDescriptor, Dictionary<string, object> parameters, ControllerContext controllerContext = null)
        {
            SignalContainer<object> resultContainer = new SignalContainer<object>();
            AsyncCallback callback = ar =>
            {
                object o = actionDescriptor.EndExecute(ar);
                resultContainer.Signal(o);
            };

            actionDescriptor.BeginExecute(controllerContext ?? GetControllerContext(), parameters, callback, state: null);
            return resultContainer.Wait();
        }
        public void Execute()
        {
            // Arrange
            Mock<ControllerContext> mockControllerContext = new Mock<ControllerContext>();
            mockControllerContext.Setup(c => c.Controller).Returns(new ExecuteController());
            ControllerContext controllerContext = mockControllerContext.Object;

            Dictionary<string, object> parameters = new Dictionary<string, object>()
            {
                { "id1", 42 }
            };

            ReflectedAsyncActionDescriptor ad = GetActionDescriptor(_asyncMethod, _completedMethod);

            SignalContainer<object> resultContainer = new SignalContainer<object>();
            AsyncCallback callback = ar =>
            {
                object o = ad.EndExecute(ar);
                resultContainer.Signal(o);
            };

            // Act
            ad.BeginExecute(controllerContext, parameters, callback, null);
            object retVal = resultContainer.Wait();

            // Assert
            Assert.Equal("Hello world: 42", retVal);
        }
        public void InvokeActionMethodWithSynchronousDescriptor() {
            // Arrange
            ControllerContext controllerContext = new Mock<ControllerContext>().Object;
            Dictionary<string, object> parameters = new Dictionary<string, object>();
            ActionResult expectedResult = new ViewResult();

            Mock<ActionDescriptor> mockDescriptor = new Mock<ActionDescriptor>();
            mockDescriptor.Expect(d => d.Execute(controllerContext, parameters)).Returns(expectedResult);
            ActionDescriptor descriptor = mockDescriptor.Object;

            SignalContainer<IAsyncResult> callbackContainer = new SignalContainer<IAsyncResult>();
            AsyncCallback callback = ar => {
                callbackContainer.Signal(ar);
            };

            object state = new object();

            AsyncControllerActionInvoker invoker = new AsyncControllerActionInvoker();

            // Act
            IAsyncResult asyncResult = invoker.BeginInvokeActionMethod(controllerContext, descriptor, parameters, callback, state);
            IAsyncResult passedToCallback = callbackContainer.Wait();
            ActionResult returnedResult = invoker.EndInvokeActionMethod(asyncResult);

            // Assert
            Assert.AreEqual(asyncResult, passedToCallback, "Returned IAsyncResult and IAsyncResult provided to callback were different.");
            Assert.AreEqual(state, asyncResult.AsyncState);
            Assert.AreEqual(expectedResult, returnedResult);
        }
        public void ExecuteReplacesIncorrectValueTypeValuesWithDefaultInstanceOnActionMethod() {
            // Arrange
            Mock<ControllerContext> mockControllerContext = new Mock<ControllerContext>();
            mockControllerContext.Expect(c => c.Controller).Returns(new ExecuteController());
            ControllerContext controllerContext = mockControllerContext.Object;

            MethodInfo actionMethod = typeof(ExecuteController).GetMethod("FooWithBool");
            Dictionary<string, object> parameters = new Dictionary<string, object>(){
                { "id1", 42 }
            };

            ReflectedEventPatternActionDescriptor ad = GetActionDescriptor(_setupMethod, actionMethod);

            SignalContainer<object> resultContainer = new SignalContainer<object>();
            AsyncCallback callback = ar => {
                object o = ad.EndExecute(ar);
                resultContainer.Signal(o);
            };

            // Act
            ad.BeginExecute(controllerContext, parameters, callback, null);
            object retVal = resultContainer.Wait();

            // Assert
            Assert.AreEqual("False42", retVal);
        }