private static bool IsScheduleDataChanged(MarketSettingsContract oldSettings, MarketSettingsContract newSettings) { var isSameSchedule = oldSettings.Open.SequenceEqual(newSettings.Open) && oldSettings.Close.SequenceEqual(newSettings.Close) && oldSettings.Holidays.SequenceEqual(newSettings.Holidays) && oldSettings.Timezone == newSettings.Timezone && oldSettings.MarketSchedule.HalfWorkingDays.SequenceEqual(newSettings.MarketSchedule.HalfWorkingDays); return(!isSameSchedule); }
public void MarketSettingsContract_MessagePack_Serialization() { var o = new MarketSettingsContract { Holidays = new List <DateTime>(), MarketSchedule = new MarketScheduleContract { HalfWorkingDays = new List <WorkingDay> { new WorkingDay(WorkingDayDuration.WholeDay, DateTime.UtcNow) } } }; var bin = MessagePackSerializer.Serialize(o); var marketSettings = MessagePackSerializer.Deserialize <MarketSettingsContract>(bin); var halfWorkingDay = marketSettings.MarketSchedule.HalfWorkingDays.First(); Assert.Equal(WorkingDayDuration.WholeDay, halfWorkingDay.Duration); Assert.Equal(DateTime.UtcNow.Date, halfWorkingDay.Timestamp); }