public void RemoveTest(ListPerformanceTestCaseConfiguration<int> configuration)
        {
            configuration.Prepare = (i =>
            {
                var c = (ListPerformanceTestCaseConfiguration<int>) i;
                c.Items = ListPerformanceTestHelper<int>.GenerateItemsToAdd(configuration).ToArray();
                c.Target = ListPerformanceTestHelper<int>.CreateListInstance(configuration);
                c.IsReusable = false; // This is the default
            });

            configuration.Run = (i =>
            {
                var c = (ListPerformanceTestCaseConfiguration<int>) i;
                foreach (var item in c.Items)
                {
                    c.Target.Remove(item);
                }
            });

            configuration.Benchmark("Remove", configuration.ToString(), 10);
        }
        public void AddTest(ListPerformanceTestCaseConfiguration<int> configuration)
        {
            configuration.Prepare = (i =>
            {
                var c = (ListPerformanceTestCaseConfiguration<int>) i;
                c.Items = ListPerformanceTestHelper<int>.GenerateItemsToAdd(configuration).ToArray();
                c.Target = ListPerformanceTestHelper<int>.CreateListInstance(configuration);
                c.IsReusable = true;
            });

            configuration.Run = (i =>
            {
                var c = (ListPerformanceTestCaseConfiguration<int>) i;
                foreach (var item in c.Items)
                {
                    c.Target.Add(item);
                }
            });

            configuration.Benchmark("Add", configuration.ToString(), 5);
        }