public CompatibleVersions(int min, int max) { EnsureArg.IsLte(min, max); Min = min; Max = max; }
/// <summary> /// Gets all calendar events within a month that have not been deleted. /// </summary> /// <param name="year">The year.</param> /// <param name="month">The month (indexed by 1).</param> /// <returns>The calendar events within the time period.</returns> public IEnumerable <CalendarEventDO> GetCalendarEvents(int year, int month) { // Guards EnsureArg.IsGte(month, 1, nameof(month)); EnsureArg.IsLte(month, 12, nameof(month)); var daysInMonth = DateTime.DaysInMonth(year, month); var monthStartDate = new DateTime(year, month, 1); var monthEndDate = new DateTime(year, month, daysInMonth); using (var repo = this.repositoryFactory.Create()) { var records = repo.CalendarEvents .Where( e => e.IsDeleted == false && ( /* Event starts within the month */ (e.StartDate.Date >= monthStartDate.Date && e.StartDate.Date <= monthEndDate.Date) || /* Event ends within the month */ (e.EndDate.Date >= monthStartDate.Date && e.EndDate.Date <= monthEndDate.Date) || /* Event spans the entire month */ (e.StartDate.Date <monthStartDate.Date && e.EndDate.Date> monthEndDate.Date))); foreach (var record in records) { yield return(this.calendarEventMapper.Map(record)); } } }
public void IsLte_When_value_is_gt_than_limit_It_throws_ArgumentException() { var spec = When_value_is_gt_than_limit(); AssertIsLteScenario(spec.Value, spec.Limit, () => Ensure.That(spec.Value, ParamName).IsLte(spec.Limit), () => EnsureArg.IsLte(spec.Value, spec.Limit, ParamName)); }
public void IsLte_When_value_is_lt_than_limit_It_should_not_throw() { var spec = When_value_is_lt_than_limit(); ShouldNotThrow( () => Ensure.That(spec.Value, ParamName).IsLte(spec.Limit), () => EnsureArg.IsLte(spec.Value, spec.Limit, ParamName)); }
public DataSource(IOptions <ConnectionStrings> configuration) { EnsureArg.IsNotNull(configuration.Value, nameof(configuration.Value)); EnsureArg.IsLte(configuration.Value.RequiredVersion, 1, nameof(configuration.Value.RequiredVersion)); EnsureArg.IsNotNullOrWhiteSpace(configuration.Value.DefaultConnection, nameof(configuration.Value.DefaultConnection)); _configuration = configuration.Value; }
public static long LastUpdatedToResourceSurrogateId(DateTime dateTime) { EnsureArg.IsLte(dateTime, MaxDateTime, nameof(dateTime)); long id = dateTime.TruncateToMillisecond().Ticks << ShiftFactor; Debug.Assert(id >= 0, "The ID should not have become negative"); return(id); }
public void IsLte_When_value_is_equal_to_limit_It_returns_passed_value() { var spec = When_value_is_equal_to_limit(); var returnedValue = Ensure.That(spec.Value, ParamName).IsLte(spec.Limit); AssertReturnedAsExpected(returnedValue, spec.Value); Action a = () => EnsureArg.IsLte(spec.Value, spec.Limit, ParamName); a.ShouldNotThrow(); }
protected Entity(TKey id, DateTime creationDate) { EnsureArg.IsNotDefault(id, nameof(id), o => o.WithException(new RequiredArgumentException(nameof(id)))); Id = id; EnsureArg.IsTrue(creationDate.Kind == DateTimeKind.Utc, nameof(creationDate), o => o.WithException(new ArgumentException(nameof(creationDate), "Date must be of type UTC"))); EnsureArg.IsLte(creationDate, DateTime.UtcNow, nameof(creationDate), o => o.WithException(new ArgumentException(nameof(creationDate), "Date must not be in the future"))); CreationDate = creationDate; }
public void IsLte_Comparer_arg_is_used() { // sa > Sa when case sensitive, but sa == Sp when case insensitive var sa = "sa"; var Sa = "Sa"; IComparer <string> ordinal = StringComparer.Ordinal; AssertIsLteScenario(sa, Sa, () => Ensure.That(sa, ParamName).IsLte(Sa, ordinal), () => EnsureArg.IsLte(sa, Sa, ordinal, ParamName)); // Validate with comparer (order is reversed) IComparer <string> ignoreCase = StringComparer.OrdinalIgnoreCase; ShouldNotThrow( () => Ensure.That(sa, ParamName).IsLte(Sa, ignoreCase), () => EnsureArg.IsLte(sa, Sa, ignoreCase, ParamName)); }