-
Notifications
You must be signed in to change notification settings - Fork 1
Open
Description
Processing dotnet/runtime#121102 (comment) command:
Command
-windows_intel -intel -arm
using BenchmarkDotNet.Attributes;
using BenchmarkDotNet.Running;
public class Benchmarks
{
static void Main(string[] args)
{
BenchmarkSwitcher.FromAssembly(typeof(Benchmarks).Assembly).Run(args);
}
public static IEnumerable<object> TestData()
{
yield return new object[] { @"C:\a", @"C:\a\b" };
yield return new object[] { @"C:\a\", @"C:\a\b\c" };
yield return new object[] {
@"C:\projects\runtime\src\libraries",
@"C:\projects\runtime\src\libraries\System.Text.Json\tests"
};
yield return new object[] {
@"C:\a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p",
@"C:\a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z"
};
yield return new object[] {
@"C:\projects\runtime-main2\src\libraries\Microsoft.Extensions.DependencyInjection.Specification.Tests\src\Fakes",
@"C:\projects\runtime-main2\src\libraries\Microsoft.Extensions.DependencyInjection.Specification.Tests\src\"
};
yield return new object[] { @"C:\foo\bar", @"D:\foo\bar" };
yield return new object[] { @"C:\foo\bar\baz", @"C:\foo\bar\..\qux\." };
yield return new object[] { @"\\server\share\folder1", @"\\server\share\folder1\folder2\folder3" };
yield return new object[] {
@"C:\Program Files\MyApp",
@"C:\Program Files\MyApp\bin\Debug\net8.0"
};
}
[Benchmark]
[ArgumentsSource(nameof(TestData))]
public string GetFoo(string relativeTo, string path) =>
Path.GetRelativePath(relativeTo, path);
}(EgorBot will reply in this issue)
Metadata
Metadata
Assignees
Labels
No labels