rama creada apartir de master en j

This commit is contained in:
jrojas
2026-06-26 10:29:23 +02:00
parent 319fd3dfb0
commit c1517fda87
2810 changed files with 1927392 additions and 25392 deletions
+126 -110
View File
@@ -13,21 +13,24 @@ namespace adas_core.Test.Services;
[TestFixture]
public class ConfigUnitsServiceTest
{
/// <summary>
/// Initializes the test dependencies and creates a new instance of <see cref="ConfigUnitsService"/> with mocked repository, options, and logger for use in unit tests.
/// </summary>
[SetUp]
public void Setup()
{
//configUnitsServiceMock = new Mock<IConfigUnitsService>();
_configUnitsRepositoryMock = new Mock<IConfigUnitsRepository>();
_optionsApiSettings = Options.Create(_apiSettings);
_logger = new Mock<ILogger<ConfigUnitsService>>();
_configUnitsService = new ConfigUnitsService(
_configUnitsRepositoryMock.Object,
_optionsApiSettings,
_logger.Object);
}
public void Setup()
{
//configUnitsServiceMock = new Mock<IConfigUnitsService>();
_configUnitsRepositoryMock = new Mock<IConfigUnitsRepository>();
_optionsApiSettings = Options.Create(_apiSettings);
_logger = new Mock<ILogger<ConfigUnitsService>>();
_configUnitsService = new ConfigUnitsService(
_configUnitsRepositoryMock.Object,
_optionsApiSettings,
_logger.Object);
}
private ConfigUnitsService _configUnitsService;
@@ -48,110 +51,123 @@ public class ConfigUnitsServiceTest
private static readonly DateTime Now = DateTime.Now;
/// <summary>
/// Verifies that when <c>ConfigUnitsRequired</c> is set to <c>false</c>, the <see cref="ConfigUnitsService.Map"/> method returns the same observation instance without applying any unit mapping or transformation.
/// </summary>
[Test]
public async Task Map_configUnitsRequired_false_Return_same_obs()
{
_optionsApiSettings.Value.ConfigUnitsRequired = false;
var obs = new PatientObservation
{
Code = "code",
CodingSystem = "SNM",
Name = "name",
Time = Now
};
var configUnitsService = new ConfigUnitsService(
_configUnitsRepositoryMock.Object,
_optionsApiSettings,
_logger.Object);
var result = await configUnitsService.Map(obs);
Assert.That(obs, Is.EqualTo(result));
}
[Test]
public async Task Map_not_units_Return_same_obs()
{
_optionsApiSettings.Value.ConfigUnitsRequired = true;
var obs = new PatientObservation
{
Code = "code",
CodingSystem = "SNM",
Name = "name",
Time = Now
};
var result = await _configUnitsService.Map(obs);
Assert.That(obs, Is.EqualTo(result));
}
[Test]
public async Task Map_Not_Find_Config_Return_same_obs()
{
_optionsApiSettings.Value.ConfigUnitsRequired = true;
var obs = new PatientObservation
{
Code = "code",
CodingSystem = "SNM",
Name = "name",
Time = Now
};
var configUnitItem = new ConfigUnitItem();
var configUnits = new ConfigUnits
{
Id = "PV1",
Items = [configUnitItem]
};
_configUnitsRepositoryMock.Setup(c => c.FindById(It.IsAny<string>())).ReturnsAsync(configUnits);
var result = await _configUnitsService.Map(obs);
using (Assert.EnterMultipleScope())
public async Task Map_configUnitsRequired_false_Return_same_obs()
{
_optionsApiSettings.Value.ConfigUnitsRequired = false;
var obs = new PatientObservation
{
Code = "code",
CodingSystem = "SNM",
Name = "name",
Time = Now
};
var configUnitsService = new ConfigUnitsService(
_configUnitsRepositoryMock.Object,
_optionsApiSettings,
_logger.Object);
var result = await configUnitsService.Map(obs);
Assert.That(obs, Is.EqualTo(result));
Assert.That(result.Units, Is.Null);
};
}
}
/// <summary>
/// Verifies that mapping a patient observation that does not contain units returns the same observation unchanged, confirming the mapping logic preserves the original data when no unit conversion is applicable.
/// </summary>
[Test]
public async Task Map_configUnits_Return_obs_ConfigUnit()
{
_optionsApiSettings.Value.ConfigUnitsRequired = true;
var obs = new PatientObservation
public async Task Map_not_units_Return_same_obs()
{
Code = "code",
CodingSystem = "SNM",
Name = "name",
Time = Now,
Units = "MDC_DIM_X_G_PER_KG"
};
_optionsApiSettings.Value.ConfigUnitsRequired = true;
var obs = new PatientObservation
{
Code = "code",
CodingSystem = "SNM",
Name = "name",
Time = Now
};
var result = await _configUnitsService.Map(obs);
Assert.That(obs, Is.EqualTo(result));
}
var configUnitItem = new ConfigUnitItem
/// <summary>
/// Verifies that the Map method returns the original observation unchanged with a null Units property when configuration units are required and no matching config unit is found for the observation's code.
/// </summary>
[Test]
public async Task Map_Not_Find_Config_Return_same_obs()
{
Code = "MDC_DIM_X_G_PER_KG",
Value = "g/kg"
};
_optionsApiSettings.Value.ConfigUnitsRequired = true;
var obs = new PatientObservation
{
Code = "code",
CodingSystem = "SNM",
Name = "name",
Time = Now
};
var configUnitItem = new ConfigUnitItem();
var configUnits = new ConfigUnits
{
Id = "PV1",
Items = [configUnitItem]
};
_configUnitsRepositoryMock.Setup(c => c.FindById(It.IsAny<string>())).ReturnsAsync(configUnits);
var result = await _configUnitsService.Map(obs);
using (Assert.EnterMultipleScope())
{
Assert.That(obs, Is.EqualTo(result));
Assert.That(result.Units, Is.Null);
};
}
var configUnits = new ConfigUnits
/// <summary>
/// Verifies that Map returns the configured unit value for a patient observation when
/// ConfigUnitsRequired is enabled and a matching config unit is found in the repository.
/// </summary>
[Test]
public async Task Map_configUnits_Return_obs_ConfigUnit()
{
Id = "PV1",
Items = [configUnitItem]
};
_configUnitsRepositoryMock.Setup(c => c.FindById(It.IsAny<string>())).ReturnsAsync(configUnits);
var result = await _configUnitsService.Map(obs);
Assert.That(result.Units, Is.Not.Null);
Assert.That(result.Units, Is.EqualTo("g/kg"));
}
_optionsApiSettings.Value.ConfigUnitsRequired = true;
var obs = new PatientObservation
{
Code = "code",
CodingSystem = "SNM",
Name = "name",
Time = Now,
Units = "MDC_DIM_X_G_PER_KG"
};
var configUnitItem = new ConfigUnitItem
{
Code = "MDC_DIM_X_G_PER_KG",
Value = "g/kg"
};
var configUnits = new ConfigUnits
{
Id = "PV1",
Items = [configUnitItem]
};
_configUnitsRepositoryMock.Setup(c => c.FindById(It.IsAny<string>())).ReturnsAsync(configUnits);
var result = await _configUnitsService.Map(obs);
Assert.That(result.Units, Is.Not.Null);
Assert.That(result.Units, Is.EqualTo("g/kg"));
}
}