On Apr 28, 2024 / 16:12, Sagi Grimberg wrote: > > > On 28/04/2024 13:32, Shinichiro Kawasaki wrote: > > On Apr 28, 2024 / 11:58, Sagi Grimberg wrote: > > > > > > On 24/04/2024 10:59, Shin'ichiro Kawasaki wrote: > > > > Enable repeated test runs for the listed test cases for > > > > NVMET_BLKDEV_TYPES. Modify the set_conditions() hooks to call > > > > _set_nvme_trtype_and_nvmet_blkdev_type() instead of _set_nvmet_trtype() > > > > so that the test cases are repeated for listed conditions in > > > > NVMET_BLKDEV_TYPES and NVMET_TRTYPES. > > > > > > > > The default values of NVMET_BLKDEV_TYPES is (device file). With this > > > > default set up, each of the listed test cases are run twice. The second > > > > runs of the test cases for 'file' blkdev type do exact same test as > > > > other test cases nvme/007, 009, 011, 013, 015, 020 and 024. > > > > > > > > Reviewed-by: Daniel Wagner <dwagner@xxxxxxx> > > > > Reviewed-by: Chaitanya Kulkarni <kch@xxxxxxxxxx> > > > > Acked-by: Nitesh Shetty <nj.shetty@xxxxxxxxxxx> > > > > Signed-off-by: Shin'ichiro Kawasaki <shinichiro.kawasaki@xxxxxxx> > > > > --- > > > > tests/nvme/006 | 2 +- > > > > tests/nvme/008 | 2 +- > > > > tests/nvme/010 | 2 +- > > > > tests/nvme/012 | 2 +- > > > > tests/nvme/014 | 2 +- > > > > tests/nvme/019 | 2 +- > > > > tests/nvme/023 | 2 +- > > > > 7 files changed, 7 insertions(+), 7 deletions(-) > > > > > > > > diff --git a/tests/nvme/006 b/tests/nvme/006 > > > > index ff0a9eb..c543b40 100755 > > > > --- a/tests/nvme/006 > > > > +++ b/tests/nvme/006 > > > > @@ -16,7 +16,7 @@ requires() { > > > > } > > > > set_conditions() { > > > > - _set_nvme_trtype "$@" > > > > + _set_nvme_trtype_and_nvmet_blkdev_type "$@" > > > Why not calling separate functions? having func do_a_and_b interface is not > > > great. > > In this case, we want to repeat the test cases to cover combination of two > > conditions: M trtypes and N blkdev_types. The test case should be repeated to > > cover all of M x N matrix elements, then the hook set_conditions() should > > iterate the elements. I can not think of the way to handle this iteration with > > separated two functions. > > What happens when you add another condition to iterate against, you > introduce set_a_and_b_and_c interface? That is my current intent. Another question is how it is likely to have more conditions to add on. I guess such many, multiplied conditions will result in combination explosion and long test runtime, so I'm not sure how much it will be useful. Do we have potential candidates of the third or fourth conditions?