MCPcopy Create free account
hub / github.com/davisking/dlib / do_test5

Function do_test5

dlib/test/bridge.cpp:94–149  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

92 }
93
94 void do_test5(int pipe_size)
95 {
96 typedef type_safe_union<int, bridge_status> tsu_type;
97
98 dlib::pipe<tsu_type> out(pipe_size);
99 dlib::pipe<tsu_type> in(pipe_size);
100 dlib::pipe<bridge_status> out_status(pipe_size);
101
102 bridge b1(connect_to_ip_and_port("127.0.0.1",testing_port), receive(in));
103 tsu_type msg;
104
105 msg = b1.get_bridge_status();
106 DLIB_TEST(msg.contains<bridge_status>() == true);
107 DLIB_TEST(msg.get<bridge_status>().is_connected == false);
108 DLIB_TEST(msg.get<bridge_status>().foreign_ip == "");
109 DLIB_TEST(msg.get<bridge_status>().foreign_port == 0);
110
111 {
112 bridge b2(listen_on_port(testing_port), transmit(out), receive(out_status));
113
114 in.dequeue(msg);
115 DLIB_TEST(msg.contains<bridge_status>() == true);
116 DLIB_TEST(msg.get<bridge_status>().is_connected == true);
117 DLIB_TEST(msg.get<bridge_status>().foreign_ip == "127.0.0.1");
118 DLIB_TEST(msg.get<bridge_status>().foreign_port == testing_port);
119 msg = b1.get_bridge_status();
120 DLIB_TEST(msg.contains<bridge_status>() == true);
121 DLIB_TEST(msg.get<bridge_status>().is_connected == true);
122 DLIB_TEST(msg.get<bridge_status>().foreign_ip == "127.0.0.1");
123 DLIB_TEST(msg.get<bridge_status>().foreign_port == testing_port);
124
125 bridge_status temp;
126 out_status.dequeue(temp);
127 DLIB_TEST(temp.is_connected == true);
128 DLIB_TEST(temp.foreign_ip == "127.0.0.1");
129
130 for (int i = 0; i < 100; ++i)
131 {
132 msg = i;
133 out.enqueue(msg);
134
135 msg.get<int>() = 0;
136
137 in.dequeue(msg);
138 DLIB_TEST(msg.contains<int>() == true);
139 DLIB_TEST(msg.get<int>() == i);
140 }
141
142 }
143
144 in.dequeue(msg);
145 DLIB_TEST(msg.contains<bridge_status>() == true);
146 DLIB_TEST(msg.get<bridge_status>().is_connected == false);
147 DLIB_TEST(msg.get<bridge_status>().foreign_ip == "127.0.0.1");
148 DLIB_TEST(msg.get<bridge_status>().foreign_port == testing_port);
149 }
150
151 void do_test5_5(int pipe_size)

Callers 1

perform_testMethod · 0.85

Calls 6

receiveFunction · 0.85
transmitFunction · 0.85
listen_on_portClass · 0.50
get_bridge_statusMethod · 0.45
enqueueMethod · 0.45

Tested by

no test coverage detected