public void ShouldNotExecuteSaveDriverIfDriverIsNotValid()
        {
            var sut = new DriversManagementViewModel(_driverServiceMock, _driverViewModelMapperMock);

            sut.SaveDriverCommand.Execute(null);
            _driverViewModelMapperMock.DidNotReceive().Map(Arg.Any <DriverViewModel>());
        }
        public void ShouldSetErrorContentIfFailedToSaveDriver()
        {
            _driverViewModelMapperMock.When(d => d.Map(Arg.Any <DriverViewModel>())).Do(d => throw new Exception());
            var sut = new DriversManagementViewModel(_driverServiceMock, _driverViewModelMapperMock);

            sut.SelectedDriver = new DriverViewModel()
            {
                FirstName     = "Valid",
                LastName      = "Valid",
                LicenseNumber = "Valid"
            };
            sut.SaveDriverCommand.Execute(null);
            Assert.NotNull(sut.SaveErrorContent);
        }
        public void ShouldExecuteSaveDriverIfDriverIsValid()
        {
            _driverViewModelMapperMock.Map(Arg.Any <DriverViewModel>()).Returns(new DriverDTO());
            var sut = new DriversManagementViewModel(_driverServiceMock, _driverViewModelMapperMock);

            sut.SelectedDriver = new DriverViewModel()
            {
                FirstName     = "Valid",
                LastName      = "Valid",
                LicenseNumber = "Valid"
            };
            sut.SaveDriverCommand.Execute(null);
            _driverViewModelMapperMock.Received().Map(Arg.Any <DriverViewModel>());
            _driverServiceMock.Received().UpdateDriver(Arg.Any <DriverDTO>());
        }
        public void ShouldAddDriversToList()
        {
            //assign
            var driverDtoList = new List <DriverDTO>()
            {
                new DriverDTO()
            };
            var driverViewModel = new DriverViewModel();

            _driverServiceMock.GetAllDrivers().Returns(driverDtoList);
            _driverViewModelMapperMock.Map(driverDtoList[0]).Returns(driverViewModel);

            //act
            var sut = new DriversManagementViewModel(_driverServiceMock, _driverViewModelMapperMock);

            //assert
            Assert.AreEqual(1, sut.DriversCollection.Count);
            Assert.AreEqual(driverViewModel, sut.DriversCollection.First());
        }
        public void ShouldNotAddDriversIfServiceReturnedNull()
        {
            var sut = new DriversManagementViewModel(_driverServiceMock, _driverViewModelMapperMock);

            Assert.IsEmpty(sut.DriversCollection);
        }