added more test cases

This commit is contained in:
skarg
2005-03-23 18:49:04 +00:00
parent f2b6b5bc8b
commit a1c6195fbb
+21
View File
@@ -75,6 +75,7 @@ int reject_decode_service_request(
return len; return len;
} }
// decode the whole APDU - mainly used for unit testing
int reject_decode_apdu( int reject_decode_apdu(
uint8_t *apdu, uint8_t *apdu,
unsigned apdu_len, unsigned apdu_len,
@@ -86,6 +87,8 @@ int reject_decode_apdu(
if (!apdu) if (!apdu)
return -1; return -1;
// optional checking - most likely was already done prior to this call // optional checking - most likely was already done prior to this call
if (apdu_len)
{
if (apdu[0] != PDU_TYPE_REJECT) if (apdu[0] != PDU_TYPE_REJECT)
return -1; return -1;
if (apdu_len > 1) if (apdu_len > 1)
@@ -96,6 +99,7 @@ int reject_decode_apdu(
invoke_id, invoke_id,
reject_reason); reject_reason);
} }
}
return len; return len;
} }
@@ -140,6 +144,23 @@ void testReject(Test * pTest)
&test_reject_reason); &test_reject_reason);
ct_test(pTest, len == -1); ct_test(pTest, len == -1);
// test NULL APDU
len = reject_decode_apdu(
NULL,
apdu_len,
&test_invoke_id,
&test_reject_reason);
ct_test(pTest, len == -1);
// force a zero length
len = reject_decode_apdu(
&apdu[0],
0,
&test_invoke_id,
&test_reject_reason);
ct_test(pTest, len == 0);
// check them all... // check them all...
for ( for (
invoke_id = 0; invoke_id = 0;