public void NextTimeUnitIsCorrect() { bool result; TimeUnit next; result = TimeUnitHelpers.TryGetNextTimeUnit(TimeUnit.CpuTick, out next); Assert.True(result); Assert.Equal(TimeUnit.Microsecond, next); result = TimeUnitHelpers.TryGetNextTimeUnit(TimeUnit.Microsecond, out next); Assert.True(result); Assert.Equal(TimeUnit.Millisecond, next); result = TimeUnitHelpers.TryGetNextTimeUnit(TimeUnit.Millisecond, out next); Assert.True(result); Assert.Equal(TimeUnit.Second, next); result = TimeUnitHelpers.TryGetNextTimeUnit(TimeUnit.Second, out next); Assert.True(result); Assert.Equal(TimeUnit.Minute, next); result = TimeUnitHelpers.TryGetNextTimeUnit(TimeUnit.Minute, out next); Assert.True(result); Assert.Equal(TimeUnit.Hour, next); result = TimeUnitHelpers.TryGetNextTimeUnit(TimeUnit.Hour, out next); Assert.False(result); }
private static void BuildTable() { foreach (var unit in TimeUnitHelpers.GetAllTimeUnits()) { if (TimeUnitHelpers.TryGetNextTimeUnit(unit, out TimeUnit nextTimeUnit)) { _factors.Add(unit, Factors(nextTimeUnit.GetTimeUnitDuration() / unit.GetTimeUnitDuration()).ToArray()); } } }