// ReSharper disable UnusedParameter.Local static void Subtract <T, TSize>(IInterval <T, TSize> from, IInterval <T, TSize> subtract, IInterval <T, TSize> result) where T : IComparable <T> where TSize : IComparable <TSize> { List <IInterval <T, TSize> > results = from.Subtract(subtract); Assert.True(results.Count == 1); Assert.True(results[0].Equals(result)); }
// ReSharper restore UnusedParameter.Local static void Subtract <T, TSize>(IInterval <T, TSize> from, IInterval <T, TSize> subtract, List <IInterval <T, TSize> > results) where T : IComparable <T> where TSize : IComparable <TSize> { List <IInterval <T, TSize> > subtracted = from.Subtract(subtract); Assert.True(results.Count == subtracted.Count); for (int i = 0; i < results.Count; ++i) { IInterval <T, TSize> result = results[i]; IInterval <T, TSize> subtractResult = subtracted[i]; Assert.True(result.Equals(subtractResult)); } }