/
dev-npgsql
/
npgsql
Обзор
Документация
Войти
/
dev-npgsql
/
npgsql
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
v6.0.11
test/Npgsql.Benchmarks/ResolveHandler.cs
52 строки
1 KB
Shay Rojansky
Apply file-scoped namespaces for 6.0 (#4298)
28 янв 2022, 15:13
Не верифицирован
28 янв 2022, 15:13
2e0ad2d
Код
Авторство
О чём код?
using BenchmarkDotNet.Attributes; using Npgsql.Internal.TypeHandling; using Npgsql.TypeMapping; using NpgsqlTypes; namespace Npgsql.Benchmarks; [MemoryDiagnoser] public class ResolveHandler { NpgsqlConnection _conn = null!; ConnectorTypeMapper _typeMapper = null!; [Params(0, 1, 2)] public int NumPlugins { get; set; } [GlobalSetup] public void Setup() { _conn = BenchmarkEnvironment.OpenConnection(); _typeMapper = (ConnectorTypeMapper)_conn.TypeMapper; if (NumPlugins > 0) _typeMapper.UseNodaTime(); if (NumPlugins > 1) _typeMapper.UseNetTopologySuite(); } [GlobalCleanup] public void Cleanup() => _conn.Dispose(); [Benchmark] public NpgsqlTypeHandler ResolveOID() => _typeMapper.ResolveByOID(23); // int4 [Benchmark] public NpgsqlTypeHandler ResolveNpgsqlDbType() => _typeMapper.ResolveByNpgsqlDbType(NpgsqlDbType.Integer); [Benchmark] public NpgsqlTypeHandler ResolveDataTypeName() => _typeMapper.ResolveByDataTypeName("integer"); [Benchmark] public NpgsqlTypeHandler ResolveClrTypeNonGeneric() => _typeMapper.ResolveByValue((object)8); [Benchmark] public NpgsqlTypeHandler ResolveClrTypeGeneric() => _typeMapper.ResolveByValue(8); }