Skip to content

Commit

Permalink
TESTS: cleanup and remove noise warnings for iscsi cmdsn tests
Browse files Browse the repository at this point in the history
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 <ronniesahlberg@gmail.com>
  • Loading branch information
sahlberg committed Jul 12, 2016
1 parent 37507c9 commit df1dc08
Show file tree
Hide file tree
Showing 4 changed files with 16 additions and 14 deletions.
17 changes: 9 additions & 8 deletions test-tool/iscsi-support.c
Expand Up @@ -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";
}
Expand Down
1 change: 1 addition & 0 deletions test-tool/iscsi-support.h
Expand Up @@ -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
Expand Down
6 changes: 3 additions & 3 deletions test-tool/test_iscsi_cmdsn_toohigh.c
Expand Up @@ -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.");
Expand Down
6 changes: 3 additions & 3 deletions test-tool/test_iscsi_cmdsn_toolow.c
Expand Up @@ -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.");
Expand Down

0 comments on commit df1dc08

Please sign in to comment.