71 lines
2.1 KiB
C#
71 lines
2.1 KiB
C#
using Omika.Data.Configuration;
|
|
|
|
namespace Omika.Tests;
|
|
|
|
public class HfsqlOptionsValidatorTests
|
|
{
|
|
[Fact]
|
|
public void Validate_ValidOptions_ReturnsSuccess()
|
|
{
|
|
var options = HfsqlOptionsValidator.CreateDefault();
|
|
options.Server = "hfsql-serveur";
|
|
options.DatabaseName = "Omika";
|
|
|
|
var result = HfsqlOptionsValidator.Validate(options);
|
|
|
|
Assert.True(result.IsSuccess);
|
|
}
|
|
|
|
[Fact]
|
|
public void Validate_MissingServer_ReturnsFailure()
|
|
{
|
|
var options = HfsqlOptionsValidator.CreateDefault();
|
|
options.Server = null;
|
|
options.DatabaseName = "Omika";
|
|
|
|
var result = HfsqlOptionsValidator.Validate(options);
|
|
|
|
Assert.True(result.IsFailure);
|
|
Assert.Contains(result.Errors, e => e.Contains("serveur", StringComparison.OrdinalIgnoreCase));
|
|
}
|
|
|
|
[Fact]
|
|
public void Validate_MissingDatabaseName_ReturnsFailure()
|
|
{
|
|
var options = HfsqlOptionsValidator.CreateDefault();
|
|
options.Server = "hfsql-serveur";
|
|
options.DatabaseName = null;
|
|
|
|
var result = HfsqlOptionsValidator.Validate(options);
|
|
|
|
Assert.True(result.IsFailure);
|
|
Assert.Contains(result.Errors, e => e.Contains("base", StringComparison.OrdinalIgnoreCase));
|
|
}
|
|
|
|
[Theory]
|
|
[InlineData(0)]
|
|
[InlineData(-1)]
|
|
[InlineData(65536)]
|
|
public void Validate_InvalidPort_ReturnsFailure(int port)
|
|
{
|
|
var options = HfsqlOptionsValidator.CreateDefault();
|
|
options.Server = "hfsql-serveur";
|
|
options.DatabaseName = "Omika";
|
|
options.Port = port;
|
|
|
|
var result = HfsqlOptionsValidator.Validate(options);
|
|
|
|
Assert.True(result.IsFailure);
|
|
Assert.Contains(result.Errors, e => e.Contains("port", StringComparison.OrdinalIgnoreCase));
|
|
}
|
|
|
|
[Fact]
|
|
public void CreateDefault_UsesLegacyConnectionName()
|
|
{
|
|
var options = HfsqlOptionsValidator.CreateDefault();
|
|
|
|
Assert.Equal(Omika.Core.Constants.DatabaseConstants.LegacyConnectionName, options.ConnectionName);
|
|
Assert.Equal(Omika.Core.Constants.DatabaseConstants.DefaultHfsqlServerPort, options.Port);
|
|
}
|
|
}
|