I recently worked on a test that involved using a setup step to untar a rather large database (~8 GB), see here. These tests were causing the GitHub runners to fail because they ran out of space. So that's when I discovered that files for an identical setup step are staged and results generated individually. Leading to more than 24 GB space being used.
In pytest, there is a concept of fixture scope, which can be per function, module, or the entire test session. Results of fixtures are cached and reused accordingly. I think, that'd be a fantastic feature for nf-test as well.
I recently worked on a test that involved using a setup step to untar a rather large database (~8 GB), see here. These tests were causing the GitHub runners to fail because they ran out of space. So that's when I discovered that files for an identical setup step are staged and results generated individually. Leading to more than 24 GB space being used.
In pytest, there is a concept of fixture scope, which can be per function, module, or the entire test session. Results of fixtures are cached and reused accordingly. I think, that'd be a fantastic feature for nf-test as well.