Esempio n. 1
0
        public async Task BufferTest()
        {
            var local = new LocalEventManager();

            local.StartListening();
            var task = local.Take(1).Timeout(TimeSpan.FromSeconds(10)).ToTask();

            await local.Publish(new AccountCreated(Guid.NewGuid(), string.Empty, string.Empty,
                                                   string.Empty, DateTime.UtcNow, AccountRole.User, string.Empty, null), Topic.Account);

            await local.Stop();

            await task;
        }
Esempio n. 2
0
        public async Task EventReceived()
        {
            var local = new LocalEventManager();

            var manualResetEvent = new ManualResetEvent(false);

            local.Subscribe(_ => { });
            local.Subscribe(_ => manualResetEvent.Set());
            local.Subscribe(_ => { });
            local.StartListening();

            await local.Publish(
                new AccountCreated(Guid.NewGuid(), string.Empty, string.Empty, string.Empty,
                                   DateTime.UtcNow, AccountRole.User, string.Empty, null), Topic.Account);

            manualResetEvent.WaitOne(TimeSpan.FromSeconds(10));
        }
Esempio n. 3
0
        public async Task NotBlockingTask()
        {
            var local = new LocalEventManager();

            var keepRunning = true;

            local.Subscribe(_ => { while (keepRunning)
                                   {
                                       ;
                                   }
                            });

            local.StartListening();

            await local.Publish(new AccountCreated(Guid.NewGuid(), string.Empty, string.Empty,
                                                   string.Empty, DateTime.UtcNow, AccountRole.User, string.Empty, null), Topic.Account);

            keepRunning = false;
        }