MCPcopy Create free account
hub / github.com/crayzeewulf/libserial / testSerialStreamFlushIOBuffers

Method testSerialStreamFlushIOBuffers

test/SerialStreamUnitTests.cpp:233–277  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

231}
232
233void
234SerialStreamUnitTests::testSerialStreamFlushIOBuffers()
235{
236 serialStream1.Open(TEST_SERIAL_PORT_1) ;
237 serialStream2.Open(TEST_SERIAL_PORT_2) ;
238
239 ASSERT_TRUE(serialStream1.IsOpen()) ;
240 ASSERT_TRUE(serialStream2.IsOpen()) ;
241
242 char writeByte = 'a';
243
244 serialStream1.write(&writeByte, 1) ;
245 serialStream1.FlushIOBuffers() ;
246
247 ASSERT_FALSE(serialStream2.IsDataAvailable()) ;
248
249 serialStream2.write(&writeByte, 1) ;
250 serialStream2.FlushIOBuffers() ;
251
252 ASSERT_FALSE(serialStream1.IsDataAvailable()) ;
253
254 serialStream1.write(&writeByte, 1) ;
255 serialStream2.write(&writeByte, 1) ;
256
257 serialStream1.DrainWriteBuffer() ;
258 serialStream2.DrainWriteBuffer() ;
259
260 // Allow time for the read buffers to show that data is available.
261 usleep(readBufferDelay) ;
262
263 ASSERT_TRUE(serialStream1.IsDataAvailable()) ;
264 ASSERT_TRUE(serialStream2.IsDataAvailable()) ;
265
266 serialStream1.FlushIOBuffers() ;
267 serialStream2.FlushIOBuffers() ;
268
269 ASSERT_FALSE(serialStream1.IsDataAvailable()) ;
270 ASSERT_FALSE(serialStream2.IsDataAvailable()) ;
271
272 serialStream1.Close() ;
273 serialStream2.Close() ;
274
275 ASSERT_FALSE(serialStream1.IsOpen()) ;
276 ASSERT_FALSE(serialStream2.IsOpen()) ;
277}
278
279void
280SerialStreamUnitTests::testSerialStreamIsDataAvailableTest()

Callers

nothing calls this directly

Calls 6

OpenMethod · 0.45
IsOpenMethod · 0.45
FlushIOBuffersMethod · 0.45
IsDataAvailableMethod · 0.45
DrainWriteBufferMethod · 0.45
CloseMethod · 0.45

Tested by

no test coverage detected