1 #include "array.h" 2 #include "libpldm/transport.h" 3 #include "transport/test.h" 4 5 #include <gtest/gtest.h> 6 7 TEST(Transport, send_recv_timeout) 8 { 9 uint8_t req[] = {0x81, 0x00, 0x01, 0x01}; 10 const struct pldm_transport_test_descriptor seq[] = { 11 { 12 .type = PLDM_TRANSPORT_TEST_ELEMENT_MSG_SEND, 13 .send_msg = 14 { 15 .dst = 1, 16 .msg = req, 17 .len = sizeof(req), 18 }, 19 }, 20 { 21 .type = PLDM_TRANSPORT_TEST_ELEMENT_LATENCY, 22 .latency = 23 { 24 .it_interval = {0, 0}, 25 .it_value = {5, 0}, 26 }, 27 }, 28 }; 29 struct pldm_transport_test* test = NULL; 30 struct pldm_transport* ctx; 31 size_t len; 32 void* msg; 33 int rc; 34 35 EXPECT_EQ(pldm_transport_test_init(&test, seq, ARRAY_SIZE(seq)), 0); 36 ctx = pldm_transport_test_core(test); 37 rc = pldm_transport_send_recv_msg(ctx, 1, req, sizeof(req), &msg, &len); 38 EXPECT_EQ(rc, PLDM_REQUESTER_RECV_FAIL); 39 pldm_transport_test_destroy(test); 40 } 41