public void CouldMapRangeSeriesViaExtensionMethodsBenchmark() { var sm = new Series <int, int>(); var count = 10000000; for (int i = 0; i < count; i++) { sm.Add(i, i); } for (int r = 0; r < 10; r++) { var sw = new Stopwatch(); sw.Restart(); var range = sm.After(0); var map = sm.Map(i => i * 2); //var range2 = map.Range(0, int.MaxValue, true, true); //var map2 = range2.Map(i => i * 2); //var range3 = map2.Range(0, int.MaxValue, true, true); //var map3 = range3.Map(i => i * 2); long sum = 0; foreach (var kvp in map) { sum += kvp.Value; } sw.Stop(); Assert.IsTrue(sum > 0); Console.WriteLine($"Mops {sw.MOPS(count)}"); } //for (int r = 0; r < 10; r++) //{ // var sw = new Stopwatch(); // sw.Restart(); // var map = sm.Select(x => new KeyValuePair<int, int>(x.Key, x.Value * 2)); // long sum = 0; // foreach (var kvp in map) // { // sum += kvp.Value; // } // sw.Stop(); // Assert.IsTrue(sum > 0); // Console.WriteLine($"LINQ Mops {sw.MOPS(count)}"); //} }