VOOZH about

URL: https://www.nuget.org/packages/Reo.Core.Testing.Common/

⇱ NuGet Gallery | Reo.Core.Testing.Common 10.0.210




Reo.Core.Testing.Common 10.0.210

dotnet add package Reo.Core.Testing.Common --version 10.0.210
 
 
NuGet\Install-Package Reo.Core.Testing.Common -Version 10.0.210
 
 
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Reo.Core.Testing.Common" Version="10.0.210" />
 
 
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Reo.Core.Testing.Common" Version="10.0.210" />
 
Directory.Packages.props
<PackageReference Include="Reo.Core.Testing.Common" />
 
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add Reo.Core.Testing.Common --version 10.0.210
 
 
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: Reo.Core.Testing.Common, 10.0.210"
 
 
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package Reo.Core.Testing.Common@10.0.210
 
 
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=Reo.Core.Testing.Common&version=10.0.210
 
Install as a Cake Addin
#tool nuget:?package=Reo.Core.Testing.Common&version=10.0.210
 
Install as a Cake Tool
The NuGet Team does not provide support for this client. Please contact its maintainers for support.

Reo.Core.Testing

Описание пакета

Reo.Core.Testing — это библиотека для упрощения тестирования в .NET-приложениях, особенно при работе с базами данных. Пакет предоставляет инструменты для инициализации тестовых контекстов, очистки данных, автоматического мокирования сервисов и настройки тестовой инфраструктуры. Он решает проблемы, связанные с дублированием кода для настройки тестов, сложностью управления тестовыми данными и необходимостью интеграции с различными поставщиками баз данных.

Основные компоненты

  1. TestDbContextInitCore<TDbContext> Абстрактный класс для инициализации тестовых контекстов баз данных. Поддерживает настройку поставщиков данных ( SQLite, InMemory) и интеграцию с AutoMocker.

  2. RegisteredProviders Класс для хранения и управления зарегистрированными поставщиками данных (например, IDataProvider<int>, IDataProvider<Guid>).

  3. AutoMocker (из Moq.AutoMock) Инструмент для автоматического мокирования сервисов, упрощающий настройку тестовых сценариев.

4 TestDbProviderType Перечисление для выбора типа тестового поставщика баз данных (SQLite in-memory, InMemory).

Требования

Установка

Используйте следующие команды для установки пакета:

# NuGet Package Manager
Install-Package Reo.Core.Testing

# .NET CLI
dotnet add package Reo.Core.Testing

Настройка

Регистрация в DI-контейнере (ASP.NET Core)

public void ConfigureServices(IServiceCollection services)
{
 services.AddDbContext<ApplicationDbContext>(options =>
 options.UseInMemoryDatabase("TestDatabase"));

 services.AddSingleton<RegisteredProviders>(provider => new RegisteredProviders
 {
 EntityIntId = provider.GetRequiredService<IDataProvider<int>>(),
 EntityGuidId = provider.GetRequiredService<IDataProvider<Guid>>()
 });
}

Конфигурационные параметры

  • Тип поставщика базы данных: Указывается через TestDbProviderType (например, SqliteMemory или MicrosoftInMemory).
  • Режим очистки данных: Выбирается через DbClearTypes (удаление базы или очистка таблиц).

Использование

Пример 1: Инициализация тестового контекста

public class MyTest : TestDbContextInitCore<ApplicationDbContext>
{
 public MyTest() : base(TestDbProviderType.SqliteMemory)
 {
 // Автоматическая настройка контекста и поставщиков
 }

 [Fact]
 public void TestDatabaseInitialization()
 {
 using var context = Mocker.Resolve<ApplicationDbContext>();
 // Проверка инициализации таблиц
 }
}

Пример 2: Автомокирование сервисов

public class MyServiceTests
{
 private readonly AutoMocker _mocker = new();

 [Fact]
 public void TestServiceBehavior()
 {
 var service = _mocker.Create<MyService>();
 var mockRepository = _mocker.GetMock<IDataRepository>();

 mockRepository.Setup(repo => repo.GetData()).Returns(new List<MyData>());

 var result = service.ProcessData();
 Assert.NotNull(result);
 }
}

Лицензия

Данный пакет распространяется под лицензией MIT.

Product Versions Compatible and additional computed target framework versions.
.NET net10.0 net10.0 is compatible.  net10.0-android net10.0-android was computed.  net10.0-browser net10.0-browser was computed.  net10.0-ios net10.0-ios was computed.  net10.0-maccatalyst net10.0-maccatalyst was computed.  net10.0-macos net10.0-macos was computed.  net10.0-tvos net10.0-tvos was computed.  net10.0-windows net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (1)

Showing the top 1 NuGet packages that depend on Reo.Core.Testing.Common:

Package Downloads
Reo.Core.Testing

Package Description

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
10.0.210 0 6/18/2026
10.0.209 74 6/17/2026
10.0.208 74 6/17/2026
10.0.207 77 6/17/2026
10.0.206 74 6/17/2026
10.0.205 82 6/16/2026
10.0.204 74 6/16/2026
10.0.203 74 6/16/2026
10.0.202 72 6/16/2026
10.0.201 90 6/16/2026
10.0.200 74 6/16/2026
10.0.199 71 6/16/2026
10.0.198 75 6/16/2026
10.0.197 98 6/16/2026
10.0.196 81 6/16/2026
10.0.195 91 6/15/2026
10.0.194 87 6/15/2026
10.0.193 92 6/15/2026
10.0.192 100 6/11/2026
10.0.191 104 6/11/2026
Loading failed