public void Handle(MillersChangedEvent message) { Millers = message.Millers; SelectedMiller = Millers.FirstOrDefault(); NotifyOfPropertyChange(() => Millers); }
private List <FarmMillerDto> CreateFarmMillerModels() { var farms = new List <FarmMillerDto>(); foreach (IFarm farm in m_FarmsRepository.All) { IMiller miller = m_MillersRepository.FindById(farm.MillerId); // todo maybe return default miller if (miller == null) { throw new ArgumentException("Unknown Miller with Id " + farm.MillerId + "!"); } var dto = new FarmMillerDto // todo should use factory, check for other new statements in code { FarmId = farm.Id, FieldsCode = farm.FieldsCode, FarmName = farm.Name, Harvested = farm.Harvested, FarmType = farm.FarmType, MillerId = miller.Id, MillerName = miller.Name }; farms.Add(dto); } return(farms); }
public void FindById_ReturnsNull_ForUnknownId( [NotNull] MillersRepository sut) { // Arrange // Act IMiller actual = sut.FindById(Guid.Empty); // Assert Assert.Null(actual); }
public void FindById_ReturnsMiller_ForKnownId( [NotNull] IMiller expected, [NotNull] MillersRepository sut) { // Arrange sut.Save(expected); // Act IMiller actual = sut.FindById(expected.Id); // Assert Assert.AreEqual(expected, actual); }
public void SearchByMillerName_ReturnsMatchingFarms_ForSearchText( [NotNull] IMiller expected, [NotNull] MillersRepository sut) { // Arrange expected.Name = "Name"; sut.Save(expected); // Act IQueryable <IMiller> actual = sut.SearchByMillerName("Na"); // Assert Assert.AreEqual(expected, actual.First()); }
private IFarm CreateNewFarm() { IMiller defaultMiller = m_MillersRepository.All.First(); var farm = new Farm { FieldsCode = "New Field Code", Id = Guid.NewGuid(), FarmType = FarmType.Cane, Name = "New Farm", Harvested = DateTime.Now, MillerId = defaultMiller.Id }; return(farm); }
private void GetAndPublishFarm(Guid farmId) { IFarm farm = m_FarmsRepository.FindById(farmId); if (farm == null) { return; } IMiller miller = m_MillersRepository.FindById(farm.MillerId); if (miller == null) { return; } PublishFarmChangedEvent(farm, miller); }
private void PublishFarmChangedEvent(IFarm farm, IMiller miller) { var dto = new FarmMillerDto { FarmId = farm.Id, FieldsCode = farm.FieldsCode, FarmName = farm.Name, Harvested = farm.Harvested, FarmType = farm.FarmType, MillerId = miller.Id, MillerName = miller.Name }; var changed = new FarmChangedEvent { FarmMillerDto = dto }; m_EventAggregator.PublishOnBackgroundThread(changed); }