Esempio n. 1
0
        public void ApplicationMessenger_QueueMessenger_EnsureMessageTrackingWorksOnSingleAdd()
        {
            var debug       = Substitute.For <IFrameworkMessenger>();
            var application = Substitute.For <IApplication>();

            IApplicationMessenger messenger = new ApplicationMessenger(debug, application);

            Assert.False(messenger.AreThereMessagesInQueue());

            messenger.QueueMessage(FrameworkMessage.GamepadAdded);

            Assert.True(messenger.AreThereMessagesInQueue());
        }
Esempio n. 2
0
        public void ApplicationMessenger_QueueMessenger_ValidateQueueEmptyingAndProcessingTriggers()
        {
            var debug       = Substitute.For <IFrameworkMessenger>();
            var application = Substitute.For <IApplication>();
            var services    = Substitute.For <IServices>();

            IApplicationMessenger messenger = new ApplicationMessenger(debug, application);

            Assert.False(messenger.AreThereMessagesInQueue());

            messenger.QueueMessage(FrameworkMessage.GamepadAdded);
            messenger.QueueMessage(FrameworkMessage.GamepadAdded);
            messenger.QueueMessage(FrameworkMessage.GamepadAdded);
            messenger.QueueMessage(FrameworkMessage.GamepadAdded);

            Assert.True(messenger.AreThereMessagesInQueue());

            messenger.ProcessMessageQueue(services);

            Assert.False(messenger.AreThereMessagesInQueue());

            application.Received(4).ProcessMessage(Arg.Any <FrameworkMessage>(), Arg.Any <IServices>());
        }