diff --git a/test/cmd-discard.c b/test/cmd-discard.c index 751cfc756..0e0dd3f4d 100644 --- a/test/cmd-discard.c +++ b/test/cmd-discard.c @@ -404,29 +404,29 @@ int main(int argc, char *argv[]) if (!opcodes[cmd_op].test) continue; ret = basic_cmd_test(&ring, cmd_op); - if (ret) { - if (ret == T_EXIT_SKIP) - continue; - + if (ret == T_EXIT_FAIL) { fprintf(stderr, "basic_cmd_test() failed, cmd %i\n", cmd_op); return T_EXIT_FAIL; } ret = test_rdonly(&ring, cmd_op); - if (ret) { + if (ret == T_EXIT_FAIL) { fprintf(stderr, "test_rdonly() failed, cmd %i\n", cmd_op); return T_EXIT_FAIL; } ret = test_fail_edge_cases(&ring, cmd_op); - if (ret) { + if (ret == T_EXIT_FAIL) { fprintf(stderr, "test_fail_edge_cases() failed, cmd %i\n", cmd_op); return T_EXIT_FAIL; } - fret = T_EXIT_PASS; + if (ret == T_EXIT_SKIP) + fret = T_EXIT_SKIP; + else + fret = T_EXIT_PASS; } io_uring_queue_exit(&ring);