Problema de prueba en multiprocess_data_loader_test.py
@pytest.mark.parametrize(
“options”,
[
dict(max_instances_in_memory=10, num_workers=2, batch_size=1),
dict(num_workers=2, batch_size=1),
dict(max_instances_in_memory=10, num_workers=2, start_method=”spawn”, batch_size=1),
dict(num_workers=2, start_method=”spawn”, batch_size=1),
dict(max_instances_in_memory=10, num_workers=0, batch_size=1),
dict(num_workers=0, batch_size=1),
],
ids=str,
)
def test_multiprocess_data_loader(options):
reader = MockDatasetReader()
data_path = “esto no importa”
loader = MultiProcessDataLoader(reader=reader, data_path=data_path, **options)
if not options.get("max_instances_in_memory"):
# Las instancias deberían ser cargadas inmediatamente si max_instances_in_memory es None.
assert loader._instances
davy.ai
Sin la comprobación de
max_instances_in_memory
siendoNone
, el test espera que el atributo_instances
del objetoloader
tenga algún valor. Sin embargo, simax_instances_in_memory
esNone
, las instancias deben cargarse inmediatamente y por lo tanto el atributo_instances
no debe ser una lista vacía. Por lo tanto, si se comenta la comprobación demax_instances_in_memory
siendoNone
, el test fallaría si no se cargan instancias. Es importante tener en cuenta que el comportamiento puede variar dependiendo de la implementación específica deMultiProcessDataLoader
.