예제 #1
0
        public StaffControlUCViewModel(IEventAggregator eventAggregator, IHttpActions httpActions, IDialogService dialogService)
        {
            // assign injections
            aggregator = eventAggregator;
            http       = httpActions;
            dialog     = dialogService;

            // Assaign for properties
            aggregator.GetEvent <SendModelEvent>().Subscribe(LoadModel);
            DequeueModel = new DequeueModel()
            {
                CustomerId = 0
            };
        }
        public void ExecuteCallNextCommandAsync_CallToNextClient_NextClientWasCalled()
        {
            // Arrange
            StaffControlUCViewModel viewModel = new StaffControlUCViewModel(eventAggregator, httpActions, dialogService);

            viewModel.Model = new Models.StationModel()
            {
                StationNumber = 1, StationServiceType = Common.ServiceType.Nurse
            };
            EventFireMockup eventFire = new EventFireMockup(eventAggregator);

            DequeueModel result = new DequeueModel()
            {
                CustomerId = 1, QueueuNumber = 1
            };

            // Act
            eventFire.SendModel();
            viewModel.CallNextCommand.Execute();

            // Assert
            Assert.AreEqual(result.CustomerId, viewModel.DequeueModel.CustomerId);
            Assert.AreEqual(result.QueueuNumber, viewModel.DequeueModel.QueueuNumber);
        }