protected BaseWorkingDaysFixture(IWorkingDaysProvider provider, int softIterations, int heavyIterations, params DateTime[] baseDates) { Provider = provider; SoftIterations = softIterations; HeavyIterations = heavyIterations; BaseDates = baseDates; }
protected static void AssertProviderHeavy(IWorkingDaysProvider prov, int iterations, bool forward, bool consider, params DateTime[] baseDates) { foreach (var baseDate in baseDates) { WorkingDays w = new WorkingDays(prov); int one = forward ? 1 : -1; DateTime curr = baseDate; for (int i = 1; i <= iterations; i++) { while (!w.IsWorkingDay(curr) || (!consider && curr == baseDate)) { curr = curr.AddDays(one); } if (forward) { w.GetInAdvance(i, baseDate, consider).Should().Be(curr); } else { w.GetBackwards(i, baseDate, consider).Should().Be(curr); } curr = curr.AddDays(one); } } }
protected BaseWorkingDaysFixture(IWorkingDaysProvider provider, int softIterations, int heavyIterations, params DateTime[] baseDates) { Provider = provider; SoftIterations = softIterations; HeavyIterations = heavyIterations; BaseDates = baseDates; }
public static WorkingDays Get(IWorkingDaysProvider key) { WorkingDays w = null; if (!instances.TryGetValue(key, out w)) instances[key] = w = new WorkingDays(key); return w; }
// ReSharper disable once TooManyDependencies public VouchersUseCase(IEmployeeReader employeeReader, IVoucherWriter voucherWriter, IOutOfOfficeOperationsProvider outOfOfficeOperationsProvider, IWorkingDaysProvider workingDaysProvider) { this.employeeReader = employeeReader; this.voucherWriter = voucherWriter; this.outOfOfficeOperationsProvider = outOfOfficeOperationsProvider; this.workingDaysProvider = workingDaysProvider; vouchersService = new VouchersService(); }
public static WorkingDays Get(IWorkingDaysProvider key) { WorkingDays w = null; if (!instances.TryGetValue(key, out w)) { instances[key] = w = new WorkingDays(key); } return(w); }
protected static void AssertProviderSoft(IWorkingDaysProvider prov, int iterations, params DateTime[] baseDates) { foreach (var baseDate in baseDates) { int count = 0; DateTime curr = baseDate; for (int i = 0; i < iterations; i++) { if (prov.IsWorkingDay(curr)) { count++; } prov.GetNetWorkingDays(baseDate, curr).Should().Be(count); curr = curr.AddDays(1); } } }
protected static void AssertProviderHeavy(IWorkingDaysProvider prov, int iterations, bool forward, bool consider, params DateTime[] baseDates) { foreach (var baseDate in baseDates) { WorkingDays w = new WorkingDays(prov); int one = forward ? 1 : -1; DateTime curr = baseDate; for (int i = 1; i <= iterations; i++) { while (!w.IsWorkingDay(curr) || (!consider && curr == baseDate)) curr = curr.AddDays(one); if (forward) w.GetInAdvance(i, baseDate, consider).Should().Be(curr); else w.GetBackwards(i, baseDate, consider).Should().Be(curr); curr = curr.AddDays(one); } } }
public WorkingDays(IWorkingDaysProvider provider) { this.provider = provider; }
public WorkingDays(IWorkingDaysProvider provider) { this.provider = provider; }
protected static void AssertProviderSoft(IWorkingDaysProvider prov, int iterations, params DateTime[] baseDates) { foreach (var baseDate in baseDates) { int count = 0; DateTime curr = baseDate; for (int i = 0; i < iterations; i++) { if (prov.IsWorkingDay(curr)) count++; prov.GetNetWorkingDays(baseDate, curr).Should().Be(count); curr = curr.AddDays(1); } } }