26 #ifdef GRPC_LINUX_ERRQUEUE
28 static void TestShutdownFlushesListVerifier(
void*
arg,
41 static void TestShutdownFlushesList() {
43 TestShutdownFlushesListVerifier);
46 gpr_atm verifier_called[NUM_ELEM];
47 for (
auto i = 0;
i < NUM_ELEM;
i++) {
49 grpc_core::TracedBuffer::AddNewEntry(
50 &list,
i, 0,
static_cast<void*
>(&verifier_called[
i]));
54 for (
auto i = 0;
i < NUM_ELEM;
i++) {
60 static void TestVerifierCalledOnAckVerifier(
void*
arg,
75 static void TestVerifierCalledOnAck() {
76 struct sock_extended_err serr;
78 serr.ee_info = grpc_core::SCM_TSTAMP_ACK;
79 struct grpc_core::scm_timestamping tss;
80 tss.ts[0].tv_sec = 123;
81 tss.ts[0].tv_nsec = 456;
83 TestVerifierCalledOnAckVerifier);
87 grpc_core::TracedBuffer::AddNewEntry(&list, 213, 0, &verifier_called);
88 grpc_core::TracedBuffer::ProcessTimestamp(&list, &serr,
nullptr, &tss);
96 static void TestRepeatedShutdown() {
97 struct sock_extended_err serr;
99 serr.ee_info = grpc_core::SCM_TSTAMP_ACK;
100 struct grpc_core::scm_timestamping tss;
101 tss.ts[0].tv_sec = 123;
102 tss.ts[0].tv_nsec = 456;
104 TestVerifierCalledOnAckVerifier);
108 grpc_core::TracedBuffer::AddNewEntry(&list, 213, 0, &verifier_called);
109 grpc_core::TracedBuffer::ProcessTimestamp(&list, &serr,
nullptr, &tss);
117 static void TestTcpBufferList() {
118 TestVerifierCalledOnAck();
119 TestShutdownFlushesList();
120 TestRepeatedShutdown();
123 int main(
int argc,
char** argv) {
133 int main(
int ,
char** ) {
return 0; }