diff --git a/benchmarks/Microsoft.AspNetCore.Routing.Performance/RouteValueDictionaryBenchmark.cs b/benchmarks/Microsoft.AspNetCore.Routing.Performance/RouteValueDictionaryBenchmark.cs deleted file mode 100644 index 656a742367..0000000000 --- a/benchmarks/Microsoft.AspNetCore.Routing.Performance/RouteValueDictionaryBenchmark.cs +++ /dev/null @@ -1,139 +0,0 @@ -// Copyright (c) .NET Foundation. All rights reserved. -// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. - -using System; -using BenchmarkDotNet.Attributes; - -namespace Microsoft.AspNetCore.Routing -{ - public class RouteValueDictionaryBenchmark - { - // These dictionaries are used by a few tests over and over, so don't modify them destructively. - private RouteValueDictionary _arrayValues; - private RouteValueDictionary _propertyValues; - - [GlobalSetup] - public void Setup() - { - _arrayValues = new RouteValueDictionary() - { - { "action", "Index" }, - { "controller", "Home" }, - { "id", "17" }, - }; - _propertyValues = new RouteValueDictionary(new { action = "Index", controller = "Home", id = "17" }); - } - - [Benchmark] - public RouteValueDictionary AddSingleItem() - { - var dictionary = new RouteValueDictionary(); - dictionary.Add("action", "Index"); - return dictionary; - } - - [Benchmark] - public RouteValueDictionary AddThreeItems() - { - var dictionary = new RouteValueDictionary(); - dictionary.Add("action", "Index"); - dictionary.Add("controller", "Home"); - dictionary.Add("id", "15"); - return dictionary; - } - - [Benchmark] - public RouteValueDictionary ForEachThreeItems_Array() - { - var dictionary = _arrayValues; - foreach (var kvp in dictionary) - { - GC.KeepAlive(kvp.Value); - } - return dictionary; - } - - [Benchmark] - public RouteValueDictionary ForEachThreeItems_Properties() - { - var dictionary = _arrayValues; - foreach (var kvp in dictionary) - { - GC.KeepAlive(kvp.Value); - } - return dictionary; - } - - [Benchmark] - public RouteValueDictionary GetThreeItems_Array() - { - var dictionary = _arrayValues; - GC.KeepAlive(dictionary["action"]); - GC.KeepAlive(dictionary["controller"]); - GC.KeepAlive(dictionary["id"]); - return dictionary; - } - - [Benchmark] - public RouteValueDictionary GetThreeItems_Properties() - { - var dictionary = _propertyValues; - GC.KeepAlive(dictionary["action"]); - GC.KeepAlive(dictionary["controller"]); - GC.KeepAlive(dictionary["id"]); - return dictionary; - } - - [Benchmark] - public RouteValueDictionary SetSingleItem() - { - var dictionary = new RouteValueDictionary(); - dictionary["action"] = "Index"; - return dictionary; - } - - [Benchmark] - public RouteValueDictionary SetExistingItem() - { - var dictionary = _arrayValues; - dictionary["action"] = "About"; - return dictionary; - } - - [Benchmark] - public RouteValueDictionary SetThreeItems() - { - var dictionary = new RouteValueDictionary(); - dictionary["action"] = "Index"; - dictionary["controller"] = "Home"; - dictionary["id"] = "15"; - return dictionary; - } - - [Benchmark] - public RouteValueDictionary TryGetValueThreeItems_Array() - { - var dictionary = _arrayValues; - dictionary.TryGetValue("action", out var action); - dictionary.TryGetValue("controller", out var controller); - dictionary.TryGetValue("id", out var id); - GC.KeepAlive(action); - GC.KeepAlive(controller); - GC.KeepAlive(id); - return dictionary; - } - - [Benchmark] - public RouteValueDictionary TryGetValueThreeItems_Properties() - { - var dictionary = _propertyValues; - dictionary.TryGetValue("action", out var action); - dictionary.TryGetValue("controller", out var controller); - dictionary.TryGetValue("id", out var id); - GC.KeepAlive(action); - GC.KeepAlive(controller); - GC.KeepAlive(id); - return dictionary; - } - } -}