public async Task Should_Save_HolidayDates_Corrently() { // arrange var loaderOffices = await _officeDataLoader.LoadValueAtMostAsync(10); var office = loaderOffices.FirstOrDefault <OfficeViewObject>(); // act var holidays = office.HolidayDates; var holidaysList = holidays.ToList <HolidayViewObject>(); var prevList = holidaysList.Count(); HolidayViewObject holidayViewObject = Craft_Holiday_Date(office.Codigo); holidaysList.Add(holidayViewObject); office.HolidayDates = holidaysList; var result = await _officeDataSaver.SaveAsync(office); Assert.IsTrue(result); var entity = await _officeDataLoader.LoadValueAsync(office.Codigo); var value = entity.HolidayDates.FirstOrDefault <HolidayViewObject>(x => ( (x.FESTIVO == holidayViewObject.FESTIVO) && (x.OFICINA == holidayViewObject.OFICINA) && (x.PARTE_DIA == holidayViewObject.PARTE_DIA) && (x.HORA_DESDE == holidayViewObject.HORA_DESDE) && (x.HORA_HASTA == holidayViewObject.HORA_HASTA))); var nextList = entity.HolidayDates.Count(); Assert.Greater(nextList, prevList); Assert.NotNull(value); }
private void OnSelectedDaysCommand(object obj) { var dictionary = obj as IDictionary <HolidayCalendar.Status, object>; var holidays = dictionary[HolidayCalendar.Status.CurrentHolidays]; var changedValue = dictionary[HolidayCalendar.Status.ChangedValue] as Tuple <DateTime, bool>; var holidayDto = new HolidayViewObject(); CreateHolidayItem(ref holidayDto, changedValue.Item1, changedValue.Item2, !changedValue.Item2); _lastSelectedDay = holidayDto; if (_holidaysDates.Contains(holidayDto, new HolidayDateComparer())) { var holidayList = _holidaysDates.ToList(); holidayList.Remove(holidayDto); if (!holidayDto.IsDeleted) { holidayList.Add(holidayDto); } _holidaysDates = holidayList; } else { _holidaysDates = _holidaysDates.Union(new List <HolidayViewObject>() { holidayDto }); } }
private void CreateHolidayItem(ref HolidayViewObject viewObject, DateTime time, bool isNew, bool isDeleted) { viewObject.PARTE_DIA = _currentPartOfDay; viewObject.FESTIVO = time; viewObject.OFICINA = DataObject.Codigo; viewObject.HORA_DESDE = _holidayTimeSpanFrom; viewObject.HORA_HASTA = _holidayTimeSpanTo; viewObject.IsDirty = true; viewObject.IsDeleted = isDeleted; viewObject.IsNew = isNew; viewObject.IsChanged = true; }
/// <summary> /// HolidayViewObject. This craft an holiday data transfer object. /// </summary> /// <returns></returns> private HolidayViewObject Craft_Holiday_Date(string oficina) { HolidayViewObject holidayViewObject = new HolidayViewObject(); holidayViewObject.FESTIVO = new DateTime(2018, 12, 24); holidayViewObject.HORA_DESDE = new TimeSpan(14, 0, 0); holidayViewObject.HORA_HASTA = new TimeSpan(20, 0, 0); holidayViewObject.PARTE_DIA = 1; holidayViewObject.OFICINA = oficina; holidayViewObject.IsDirty = true; holidayViewObject.IsNew = true; holidayViewObject.IsValid = true; return(holidayViewObject); }