From df1dc08eb7d7bf3bd6af59a7c83386cd25fecd31 Mon Sep 17 00:00:00 2001 From: Ronnie Sahlberg Date: Mon, 11 Jul 2016 20:50:47 -0700 Subject: [PATCH] TESTS: cleanup and remove noise warnings for iscsi cmdsn tests The iscsi cmdsn tests are noisy and generate a lot of [FAILURE] warnings for things that are expected. Fix this by do the plumbing to allow using a EXPECT_STATUS_TIMEOUT for commands we expect will never be replied to and will thus time out. Signed-off-by: Ronnie Sahlberg --- test-tool/iscsi-support.c | 17 +++++++++-------- test-tool/iscsi-support.h | 1 + test-tool/test_iscsi_cmdsn_toohigh.c | 6 +++--- test-tool/test_iscsi_cmdsn_toolow.c | 6 +++--- 4 files changed, 16 insertions(+), 14 deletions(-) diff --git a/test-tool/iscsi-support.c b/test-tool/iscsi-support.c index c2db7266..b96b1716 100644 --- a/test-tool/iscsi-support.c +++ b/test-tool/iscsi-support.c @@ -145,14 +145,15 @@ int all_zero(const unsigned char *buf, unsigned size) static const char *scsi_status_str(int status) { switch(status) { - case SCSI_STATUS_GOOD: return "SUCCESS"; - case SCSI_STATUS_CHECK_CONDITION: return "CHECK_CONDITION"; - case SCSI_STATUS_CONDITION_MET: return "CONDITIONS_MET"; - case SCSI_STATUS_BUSY: return "BUSY"; - case SCSI_STATUS_RESERVATION_CONFLICT: return "RESERVATION_CONFLICT"; - case SCSI_STATUS_TASK_SET_FULL: return "TASK_SET_FULL"; - case SCSI_STATUS_ACA_ACTIVE: return "ACA_ACTIVE"; - case SCSI_STATUS_TASK_ABORTED: return "TASK_ABORTED"; + case SCSI_STATUS_GOOD: return "SUCCESS"; + case SCSI_STATUS_TIMEOUT: return "TIMEOUT"; + case SCSI_STATUS_CHECK_CONDITION: return "CHECK_CONDITION"; + case SCSI_STATUS_CONDITION_MET: return "CONDITIONS_MET"; + case SCSI_STATUS_BUSY: return "BUSY"; + case SCSI_STATUS_RESERVATION_CONFLICT: return "RESERVATION_CONFLICT"; + case SCSI_STATUS_TASK_SET_FULL: return "TASK_SET_FULL"; + case SCSI_STATUS_ACA_ACTIVE: return "ACA_ACTIVE"; + case SCSI_STATUS_TASK_ABORTED: return "TASK_ABORTED"; } return "UNKNOWN"; } diff --git a/test-tool/iscsi-support.h b/test-tool/iscsi-support.h index d6d35ed9..26c14f30 100644 --- a/test-tool/iscsi-support.h +++ b/test-tool/iscsi-support.h @@ -35,6 +35,7 @@ extern const char *initiatorname1; extern const char *initiatorname2; #define EXPECT_STATUS_GOOD SCSI_STATUS_GOOD, SCSI_SENSE_NO_SENSE, NULL, 0 +#define EXPECT_STATUS_TIMEOUT SCSI_STATUS_TIMEOUT, SCSI_SENSE_NO_SENSE, NULL, 0 #define EXPECT_NO_MEDIUM SCSI_STATUS_CHECK_CONDITION, SCSI_SENSE_NOT_READY, no_medium_ascqs, 3 #define EXPECT_LBA_OOB SCSI_STATUS_CHECK_CONDITION, SCSI_SENSE_ILLEGAL_REQUEST, lba_oob_ascqs, 1 #define EXPECT_INVALID_FIELD_IN_CDB SCSI_STATUS_CHECK_CONDITION, SCSI_SENSE_ILLEGAL_REQUEST, invalid_cdb_ascqs,2 diff --git a/test-tool/test_iscsi_cmdsn_toohigh.c b/test-tool/test_iscsi_cmdsn_toohigh.c index 8a2c4c15..a0988249 100644 --- a/test-tool/test_iscsi_cmdsn_toohigh.c +++ b/test-tool/test_iscsi_cmdsn_toohigh.c @@ -74,9 +74,9 @@ void test_iscsi_cmdsn_toohigh(void) iscsi_set_timeout(sd->iscsi_ctx, 3); ret = testunitready(sd, - EXPECT_STATUS_GOOD); - CU_ASSERT_EQUAL(ret, -1); - if (ret == -1) { + EXPECT_STATUS_TIMEOUT); + CU_ASSERT_EQUAL(ret, 0); + if (ret == 0) { logging(LOG_VERBOSE, "[SUCCESS] We did not receive a reply"); } else { logging(LOG_VERBOSE, "[FAILURE] We got a response from the target but SMDSN was outside of the window."); diff --git a/test-tool/test_iscsi_cmdsn_toolow.c b/test-tool/test_iscsi_cmdsn_toolow.c index 60d19a54..65b2274a 100644 --- a/test-tool/test_iscsi_cmdsn_toolow.c +++ b/test-tool/test_iscsi_cmdsn_toolow.c @@ -74,9 +74,9 @@ void test_iscsi_cmdsn_toolow(void) iscsi_set_timeout(sd->iscsi_ctx, 3); ret = testunitready(sd, - EXPECT_STATUS_GOOD); - CU_ASSERT_EQUAL(ret, -1); - if (ret == -1) { + EXPECT_STATUS_TIMEOUT); + CU_ASSERT_EQUAL(ret, 0); + if (ret == 0) { logging(LOG_VERBOSE, "[SUCCESS] We did not receive a reply"); } else { logging(LOG_VERBOSE, "[FAILURE] We got a response from the target but SMDSN was outside of the window.");