public EmployeeCostEntryViewModel(
            IMessageBroker messageBroker, 
            IEmployeeCostService costService,
            IEmployeeService employeeService,
            SaveEmployeeCostCommand saveCostCommand,
            CancelCommand cancelCommand, ShowEmployeeCostCommand showListCommand
            )
        {
            this.messageBroker = messageBroker;
            this.costService = costService;
            this.employeeService = employeeService;
            ActualSaveCommand = saveCostCommand;

            CancelCommand = cancelCommand;
            ShowCostListCommand = showListCommand;
            InitializeCommands();
            NavigationCommands = new List<CommandBase>{SaveCommand,CancelCommand};
            CancelCommand.Action = broker => showListCommand.Execute(null);

            PropertiesToValidate = new List<string>()
            {
                "Date",
                "Total",
                "Details"
            };

            Employees = new ObservableCollection<Employee>(employeeService.GetAll());

            SubscribeMessages();
        }
 public SaveEmployeeCostCommandTests()
 {
     brokerMock = new Mock<IMessageBroker>();
     serviceMock = new Mock<IEmployeeCostService>();
     command = new SaveEmployeeCostCommand(brokerMock.Object, serviceMock.Object);
 }