Пример #1
0
        public void RegisterUnregisterTest()
        {
            TestLauncherActor.Test(() =>
            {
                ConfigurationManager.AppSettings["ListenerService"]  = "MemoryListenerService";
                ConfigurationManager.AppSettings["SerializeService"] = "NetDataContractSerializeService";
                ActorServer.Start("localhost", 80, new HostRelayActor());
                var actor = new StateFullActor <string>();
                HostDirectoryActor.Register(actor);
                SerialObject so = new SerialObject(new MessageParam <StateAction, string>(StateAction.Set, "Test"), actor.Tag);
                HostDirectoryActor.GetInstance().SendMessage(so);
                var result = actor.GetStateAsync(10000).Result;
                Assert.AreEqual(result, "Test");

                HostDirectoryActor.Unregister(actor);
                SerialObject so2 = new SerialObject(new MessageParam <StateAction, string>(StateAction.Set, "Test2"), actor.Tag);
                HostDirectoryActor.GetInstance().SendMessage(so2);
                var result2 = actor.GetStateAsync(10000).Result;
                Assert.AreEqual("Test", result2, string.Format(CultureInfo.InvariantCulture, "Expected {0} Found {1}", "Test", result2));
            });
        }
Пример #2
0
        public void RegisterUnregisterTest()
        {
            TestLauncherActor.Test(() =>
            {
                ActorServer.Start(ActorConfigManager.CastForTest());
                var actor = new StateFullActor <string>();
                HostDirectoryActor.Register(actor);
                SerialObject so = new SerialObject(new MessageParam <StateAction, string>(StateAction.Set, "Test"), actor.Tag);
                HostDirectoryActor.GetInstance().SendMessage(so);
                Task.Delay(5000).Wait();
                var result = actor.GetStateAsync(5000).Result;
                Assert.AreEqual(result, "Test");

                HostDirectoryActor.Unregister(actor);
                SerialObject so2 = new SerialObject(new MessageParam <StateAction, string>(StateAction.Set, "Test2"), actor.Tag);
                HostDirectoryActor.GetInstance().SendMessage(so2);
                Task.Delay(5000).Wait();
                var result2 = actor.GetStateAsync(5000).Result;
                Assert.AreEqual("Test", result2, string.Format(CultureInfo.InvariantCulture, "Expected {0} Found {1}", "Test", result2));
            });
        }
Пример #3
0
        public async Task Process(string order)
        {
            switch (order)
            {
            case "0":
            case "1":
            case "2":
            case "3":
            case "4":
            case "5":
            case "6":
            case "7":
            case "8":
            case "9":
            {
                CalcActor.Digit(order);
                break;
            }

            case "+": CalcActor.Plus(); break;

            case "-": CalcActor.Moins(); break;

            case "/": CalcActor.Div(); break;

            case "*": CalcActor.Mult(); break;

            case "Clear": CalcActor.Clear(); break;

            case "+/-": CalcActor.Sign(); break;
            }
            var accumulators = await _observer.GetStateAsync();

            Form.lblAccumulator.Text = accumulators.Accumulator.ToString();
            Form.lblPlusAcc.Text     = accumulators.PlusAcc.ToString();
            Form.lblMoinsAcc.Text    = accumulators.MoinsAcc.ToString();
            Form.lblMultAcc.Text     = accumulators.MultAcc.ToString();
            Form.lblDivAcc.Text      = accumulators.DivAcc.ToString();
            Form.lblEnter.Text       = accumulators.Data;
        }