コード例 #1
0
        public void TestNoToken()
        {
            //Given
            BusSettings busSettings = new BusSettings {
                BusHost = "localhost", BusPort = 8519, ProjectId = "youngplatform", SubscriptionName = "WalletsApiTest", Token = ""
            };
            PubSubBusConsumer   bus     = new PubSubBusConsumer(busSettings);
            TestingEventHandler handler = new TestingEventHandler();

            bus.Subscribe <TestingEvent, TestingEventHandler>(() => handler, "testingevent");
            bus.PublishAsync(new TestingEvent {
                TestInt = 5, TestString = "TestString"
            }, "testingevent").GetAwaiter().GetResult();

            int      elapsed = 0;
            TimeSpan timeout = TimeSpan.FromSeconds(15);

            while (!handler.success && (elapsed < timeout.TotalMilliseconds))
            {
                Thread.Sleep(100);
                elapsed += 100;
            }
            Assert.True(handler.success);
            Assert.Equal(1, handler.Count);
        }
コード例 #2
0
        public async Task TestMultipleMessages()
        {
            //Given
            var consumer = InitConsumer();
            TestingEventHandler handler = new TestingEventHandler();
            int messagesCount           = new Random().Next(1000, 2000);

            consumer.Subscribe <TestingEvent, TestingEventHandler>(() => handler, "testingevent");
            await PublishMultipleMessages(messagesCount);

            int      elapsed = 0;
            TimeSpan timeout = TimeSpan.FromSeconds(30);

            while (handler.Count < messagesCount && (elapsed < timeout.TotalMilliseconds))
            {
                Thread.Sleep(100);
                elapsed += 100;
            }
            Assert.Equal(messagesCount, handler.Count);
        }
コード例 #3
0
        public void TestSubscribe()
        {
            //Given
            var consumer = InitConsumer();
            TestingEventHandler handler = new TestingEventHandler();

            consumer.Subscribe <TestingEvent, TestingEventHandler>(() => handler, "testingevent");

            PublishMessage();
            int      elapsed = 0;
            TimeSpan timeout = TimeSpan.FromSeconds(15);

            while (!handler.success && (elapsed < timeout.TotalMilliseconds))
            {
                Thread.Sleep(100);
                elapsed += 100;
            }
            Assert.True(handler.success);
            Assert.Equal(1, handler.Count);
        }
コード例 #4
0
        public void TestPublish()
        {
            //Given
            var bus = Init();
            TestingEventHandler handler = new TestingEventHandler();

            bus.Subscribe <TestingEvent, TestingEventHandler>(() => handler, "testingevent");
            bus.PublishAsync(new TestingEvent {
                TestInt = 5, TestString = "TestString"
            }, "testingevent").GetAwaiter().GetResult();

            int      elapsed = 0;
            TimeSpan timeout = TimeSpan.FromSeconds(15);

            while (!handler.success && (elapsed < timeout.TotalMilliseconds))
            {
                Thread.Sleep(100);
                elapsed += 100;
            }
            Assert.True(handler.success);
            Assert.Equal(1, handler.Count);
        }