public void ScenarioNotificationHubsClientIsMockable()
        {
            var clients = new Mock <IClientContract <ScenarioNotificationModel> >();

            clients.Setup(m => m.Notify(It.IsAny <ScenarioNotificationModel>())).Verifiable();
            _ = _mockClients.Setup(m => m.Client("random")).Returns(clients.Object);
            _ = _mockScenarioNotificator.Setup(m => m.Clients).Returns(_mockClients.Object);
            _dummyScenarioNotificationObject = CreateDummyScenarioNotificationModel();
            _mockScenarioNotificator.Object.NotifyIndividual("random", _dummyScenarioNotificationObject);
            clients.VerifyAll();
        }
        public void ScenarioNotificationHubsGroupAreMockable()
        {
            var groups = new Mock <IClientContract <ScenarioNotificationModel> >();

            groups.Setup(m => m.Notify(It.IsAny <ScenarioNotificationModel>())).Verifiable();
            _ = _mockClients.Setup(m => m.Group("message")).Returns(groups.Object);
            _ = _mockScenarioNotificator.Setup(m => m.Clients).Returns(_mockClients.Object);
            _dummyScenarioNotificationObject = CreateDummyScenarioNotificationModel();
            _mockScenarioNotificator.Object.NotifyGroup("message", _dummyScenarioNotificationObject);
            groups.VerifyAll();
        }
        public void ScenarioNotificationHubIsMockableViaType()
        {
            var all = new Mock <IClientContract <ScenarioNotificationModel> >();

            all.Setup(m => m.Notify(It.IsAny <ScenarioNotificationModel>())).Verifiable();
            _ = _mockClients.Setup(m => m.All).Returns(all.Object);
            _ = _mockScenarioNotificator.Setup(m => m.Clients).Returns(_mockClients.Object);
            _dummyScenarioNotificationObject = CreateDummyScenarioNotificationModel();
            _mockScenarioNotificator.Object.Notify(_dummyScenarioNotificationObject);

            all.VerifyAll();
        }
        public void ScenarioNotificationHubIsMockableViaDynamic()
        {
            var sendCalled    = false;
            var allObjectMock = new Mock <IClientContract <ScenarioNotificationModel> >();

            _ = _mockClients.Setup(m => m.All).Returns(allObjectMock.Object);
            _ = _mockScenarioNotificator.Setup(m => m.Clients).Returns(_mockClients.Object);
            _ = allObjectMock.Setup(m => m.Notify(It.IsAny <ScenarioNotificationModel>()))
                .Callback(() => sendCalled = true);

            _dummyScenarioNotificationObject = CreateDummyScenarioNotificationModel();
            _mockScenarioNotificator.Object.Notify(_dummyScenarioNotificationObject);

            Assert.True(sendCalled);
        }