Loading nfc/1.0/vts/functional/VtsHalNfcV1_0TargetTest.cpp +99 −62 Original line number Diff line number Diff line Loading @@ -42,6 +42,8 @@ using ::android::sp; { 0x20, 0x00, 0x01, 0x01 } #define CORE_CONN_CREATE_CMD \ { 0x20, 0x04, 0x02, 0x01, 0x00 } #define CORE_INIT_CMD \ { 0x20, 0x01, 0x00 } #define INVALID_COMMAND \ { 0x20, 0x00, 0x00 } #define FAULTY_DATA_PACKET \ Loading Loading @@ -155,7 +157,7 @@ TEST_F(NfcHidlTest, WriteCoreReset) { EXPECT_EQ(6ul, res.args->last_data_.size()); EXPECT_EQ((int)NfcStatus::OK, res.args->last_data_[3]); EXPECT_GE(VERSION, res.args->last_data_[4]); EXPECT_EQ(0ul, res.args->last_data_[5]); EXPECT_GE(1ul, res.args->last_data_[5]); } /* Loading Loading @@ -205,9 +207,26 @@ TEST_F(NfcHidlTest, WriteInvalidCommand) { * Check the response */ TEST_F(NfcHidlTest, WriteInvalidAndThenValidCommand) { // Send an Error Data Packet std::vector<uint8_t> cmd = FAULTY_DATA_PACKET; std::vector<uint8_t> cmd = CORE_RESET_CMD; NfcData data = cmd; EXPECT_EQ(data.size(), nfc_->write(data)); // Wait for CORE_RESET_RSP auto res = nfc_cb_->WaitForCallback(kCallbackNameSendData); EXPECT_TRUE(res.no_timeout); EXPECT_EQ((int)NfcStatus::OK, res.args->last_data_[3]); EXPECT_EQ((int)NfcStatus::OK, res.args->last_data_[3]); cmd = CORE_INIT_CMD; data = cmd; EXPECT_EQ(data.size(), nfc_->write(data)); // Wait for CORE_INIT_RSP res = nfc_cb_->WaitForCallback(kCallbackNameSendData); EXPECT_TRUE(res.no_timeout); EXPECT_EQ((int)NfcStatus::OK, res.args->last_data_[3]); // Send an Error Data Packet cmd = FAULTY_DATA_PACKET; data = cmd; size_t size = data.size(); for (int i = 0; i < 100; i++) { Loading @@ -215,7 +234,7 @@ TEST_F(NfcHidlTest, WriteInvalidAndThenValidCommand) { data[size - 1] = 0xFF; EXPECT_EQ(data.size(), nfc_->write(data)); // Wait for CORE_INTERFACE_ERROR_NTF auto res = nfc_cb_->WaitForCallback(kCallbackNameSendData); res = nfc_cb_->WaitForCallback(kCallbackNameSendData); EXPECT_TRUE(res.no_timeout); EXPECT_EQ(5ul, res.args->last_data_.size()); EXPECT_EQ(0x60, res.args->last_data_[0]); Loading @@ -228,7 +247,7 @@ TEST_F(NfcHidlTest, WriteInvalidAndThenValidCommand) { data = cmd; EXPECT_EQ(data.size(), nfc_->write(data)); // Wait for CORE_CONN_CREATE_RSP auto res = nfc_cb_->WaitForCallback(kCallbackNameSendData); res = nfc_cb_->WaitForCallback(kCallbackNameSendData); EXPECT_TRUE(res.no_timeout); EXPECT_EQ(7ul, res.args->last_data_.size()); EXPECT_EQ((int)NfcStatus::OK, res.args->last_data_[3]); Loading @@ -242,12 +261,30 @@ TEST_F(NfcHidlTest, WriteInvalidAndThenValidCommand) { * Repeat to send total of 1Mb data */ TEST_F(NfcHidlTest, Bandwidth) { std::vector<uint8_t> cmd = CORE_CONN_CREATE_CMD; std::vector<uint8_t> cmd = CORE_RESET_CMD; NfcData data = cmd; EXPECT_EQ(data.size(), nfc_->write(data)); // Wait for CORE_CONN_CREATE_RSP // Wait for CORE_RESET_RSP auto res = nfc_cb_->WaitForCallback(kCallbackNameSendData); EXPECT_TRUE(res.no_timeout); EXPECT_EQ((int)NfcStatus::OK, res.args->last_data_[3]); EXPECT_EQ((int)NfcStatus::OK, res.args->last_data_[3]); cmd = CORE_INIT_CMD; data = cmd; EXPECT_EQ(data.size(), nfc_->write(data)); // Wait for CORE_INIT_RSP res = nfc_cb_->WaitForCallback(kCallbackNameSendData); EXPECT_TRUE(res.no_timeout); EXPECT_EQ((int)NfcStatus::OK, res.args->last_data_[3]); cmd = CORE_CONN_CREATE_CMD; data = cmd; EXPECT_EQ(data.size(), nfc_->write(data)); // Wait for CORE_CONN_CREATE_RSP res = nfc_cb_->WaitForCallback(kCallbackNameSendData); EXPECT_TRUE(res.no_timeout); EXPECT_TRUE(res.no_timeout); EXPECT_EQ(7ul, res.args->last_data_.size()); EXPECT_EQ((int)NfcStatus::OK, res.args->last_data_[3]); uint8_t conn_id = res.args->last_data_[6]; Loading Loading
nfc/1.0/vts/functional/VtsHalNfcV1_0TargetTest.cpp +99 −62 Original line number Diff line number Diff line Loading @@ -42,6 +42,8 @@ using ::android::sp; { 0x20, 0x00, 0x01, 0x01 } #define CORE_CONN_CREATE_CMD \ { 0x20, 0x04, 0x02, 0x01, 0x00 } #define CORE_INIT_CMD \ { 0x20, 0x01, 0x00 } #define INVALID_COMMAND \ { 0x20, 0x00, 0x00 } #define FAULTY_DATA_PACKET \ Loading Loading @@ -155,7 +157,7 @@ TEST_F(NfcHidlTest, WriteCoreReset) { EXPECT_EQ(6ul, res.args->last_data_.size()); EXPECT_EQ((int)NfcStatus::OK, res.args->last_data_[3]); EXPECT_GE(VERSION, res.args->last_data_[4]); EXPECT_EQ(0ul, res.args->last_data_[5]); EXPECT_GE(1ul, res.args->last_data_[5]); } /* Loading Loading @@ -205,9 +207,26 @@ TEST_F(NfcHidlTest, WriteInvalidCommand) { * Check the response */ TEST_F(NfcHidlTest, WriteInvalidAndThenValidCommand) { // Send an Error Data Packet std::vector<uint8_t> cmd = FAULTY_DATA_PACKET; std::vector<uint8_t> cmd = CORE_RESET_CMD; NfcData data = cmd; EXPECT_EQ(data.size(), nfc_->write(data)); // Wait for CORE_RESET_RSP auto res = nfc_cb_->WaitForCallback(kCallbackNameSendData); EXPECT_TRUE(res.no_timeout); EXPECT_EQ((int)NfcStatus::OK, res.args->last_data_[3]); EXPECT_EQ((int)NfcStatus::OK, res.args->last_data_[3]); cmd = CORE_INIT_CMD; data = cmd; EXPECT_EQ(data.size(), nfc_->write(data)); // Wait for CORE_INIT_RSP res = nfc_cb_->WaitForCallback(kCallbackNameSendData); EXPECT_TRUE(res.no_timeout); EXPECT_EQ((int)NfcStatus::OK, res.args->last_data_[3]); // Send an Error Data Packet cmd = FAULTY_DATA_PACKET; data = cmd; size_t size = data.size(); for (int i = 0; i < 100; i++) { Loading @@ -215,7 +234,7 @@ TEST_F(NfcHidlTest, WriteInvalidAndThenValidCommand) { data[size - 1] = 0xFF; EXPECT_EQ(data.size(), nfc_->write(data)); // Wait for CORE_INTERFACE_ERROR_NTF auto res = nfc_cb_->WaitForCallback(kCallbackNameSendData); res = nfc_cb_->WaitForCallback(kCallbackNameSendData); EXPECT_TRUE(res.no_timeout); EXPECT_EQ(5ul, res.args->last_data_.size()); EXPECT_EQ(0x60, res.args->last_data_[0]); Loading @@ -228,7 +247,7 @@ TEST_F(NfcHidlTest, WriteInvalidAndThenValidCommand) { data = cmd; EXPECT_EQ(data.size(), nfc_->write(data)); // Wait for CORE_CONN_CREATE_RSP auto res = nfc_cb_->WaitForCallback(kCallbackNameSendData); res = nfc_cb_->WaitForCallback(kCallbackNameSendData); EXPECT_TRUE(res.no_timeout); EXPECT_EQ(7ul, res.args->last_data_.size()); EXPECT_EQ((int)NfcStatus::OK, res.args->last_data_[3]); Loading @@ -242,12 +261,30 @@ TEST_F(NfcHidlTest, WriteInvalidAndThenValidCommand) { * Repeat to send total of 1Mb data */ TEST_F(NfcHidlTest, Bandwidth) { std::vector<uint8_t> cmd = CORE_CONN_CREATE_CMD; std::vector<uint8_t> cmd = CORE_RESET_CMD; NfcData data = cmd; EXPECT_EQ(data.size(), nfc_->write(data)); // Wait for CORE_CONN_CREATE_RSP // Wait for CORE_RESET_RSP auto res = nfc_cb_->WaitForCallback(kCallbackNameSendData); EXPECT_TRUE(res.no_timeout); EXPECT_EQ((int)NfcStatus::OK, res.args->last_data_[3]); EXPECT_EQ((int)NfcStatus::OK, res.args->last_data_[3]); cmd = CORE_INIT_CMD; data = cmd; EXPECT_EQ(data.size(), nfc_->write(data)); // Wait for CORE_INIT_RSP res = nfc_cb_->WaitForCallback(kCallbackNameSendData); EXPECT_TRUE(res.no_timeout); EXPECT_EQ((int)NfcStatus::OK, res.args->last_data_[3]); cmd = CORE_CONN_CREATE_CMD; data = cmd; EXPECT_EQ(data.size(), nfc_->write(data)); // Wait for CORE_CONN_CREATE_RSP res = nfc_cb_->WaitForCallback(kCallbackNameSendData); EXPECT_TRUE(res.no_timeout); EXPECT_TRUE(res.no_timeout); EXPECT_EQ(7ul, res.args->last_data_.size()); EXPECT_EQ((int)NfcStatus::OK, res.args->last_data_[3]); uint8_t conn_id = res.args->last_data_[6]; Loading