void CorbaTest::testPortBufferConnection() { // This test assumes that there is a buffer connection mo => mi of size 3 // Check if connection succeeded both ways: BOOST_CHECK( mo->connected() ); BOOST_CHECK( mi->connected() ); double value = 0; // Check if no-data works BOOST_CHECK_EQUAL( mi->read(value), NoData ); // Check if writing works ASSERT_PORT_SIGNALLING(mo->write(1.0), mi); ASSERT_PORT_SIGNALLING(mo->write(2.0), mi); ASSERT_PORT_SIGNALLING(mo->write(3.0), mi); ASSERT_PORT_SIGNALLING(mo->write(4.0), 0); BOOST_CHECK( mi->read(value) ); BOOST_CHECK_EQUAL( 1.0, value ); BOOST_CHECK( mi->read(value) ); BOOST_CHECK_EQUAL( 2.0, value ); BOOST_CHECK( mi->read(value) ); BOOST_CHECK_EQUAL( 3.0, value ); BOOST_CHECK_EQUAL( mi->read(value), OldData ); }
void CorbaMQueueIPCTest::testPortBufferConnection() { // This test assumes that there is a buffer connection mw1 => server => mr1 of size 3 // Check if connection succeeded both ways: BOOST_CHECK( mw1->connected() ); BOOST_CHECK( mr1->connected() ); double value = 0; // Check if no-data works BOOST_CHECK( !mr1->read(value) ); // Check if writing works ASSERT_PORT_SIGNALLING(mw1->write(1.0), mr1); ASSERT_PORT_SIGNALLING(mw1->write(2.0), mr1); ASSERT_PORT_SIGNALLING(mw1->write(3.0), mr1); // it will be emptied too fast by mqueue. //ASSERT_PORT_SIGNALLING(mw1->write(4.0), 0); BOOST_CHECK( mr1->read(value) ); BOOST_CHECK_EQUAL( 1.0, value ); BOOST_CHECK( mr1->read(value) ); BOOST_CHECK_EQUAL( 2.0, value ); BOOST_CHECK( mr1->read(value) ); BOOST_CHECK_EQUAL( 3.0, value ); BOOST_CHECK_EQUAL( mr1->read(value), OldData ); }
void CorbaMQueueIPCTest::testPortBufferConnection() { // This test assumes that there is a buffer connection mw1 => server => mr1 of size 3 // Check if connection succeeded both ways: BOOST_CHECK( mw1->connected() ); BOOST_CHECK( mr1->connected() ); double value = 0; // Check if no-data works BOOST_CHECK( !mr1->read(value) ); // Check if writing works ASSERT_PORT_SIGNALLING(mw1->write(1.0), mr1); ASSERT_PORT_SIGNALLING(mw1->write(2.0), mr1); ASSERT_PORT_SIGNALLING(mw1->write(3.0), mr1); // There are two connections between mw1 and mr1. We first flush one of the // two, and then the second one (normal multi-writer single-reader // behaviour) BOOST_CHECK( mr1->read(value) ); BOOST_CHECK_EQUAL( 1.0, value ); BOOST_CHECK( mr1->read(value) ); BOOST_CHECK_EQUAL( 2.0, value ); BOOST_CHECK( mr1->read(value) ); BOOST_CHECK_EQUAL( 3.0, value ); BOOST_CHECK( mr1->read(value) ); BOOST_CHECK_EQUAL( 1.0, value ); BOOST_CHECK( mr1->read(value) ); BOOST_CHECK_EQUAL( 2.0, value ); BOOST_CHECK( mr1->read(value) ); BOOST_CHECK_EQUAL( 3.0, value ); BOOST_CHECK_EQUAL( mr1->read(value), OldData ); }
void CorbaTest::testPortDataConnection() { // This test assumes that there is a data connection mo1 => mi2 // Check if connection succeeded both ways: BOOST_CHECK( mo1->connected() ); BOOST_CHECK( mi2->connected() ); double value = 0; // Check if no-data works BOOST_CHECK_EQUAL( mi2->read(value), NoData ); // Check if writing works (including signalling) ASSERT_PORT_SIGNALLING(mo1->write(1.0), mi2) BOOST_CHECK( mi2->read(value) ); BOOST_CHECK_EQUAL( 1.0, value ); ASSERT_PORT_SIGNALLING(mo1->write(2.0), mi2); BOOST_CHECK( mi2->read(value) ); BOOST_CHECK_EQUAL( 2.0, value ); }
void CorbaMQueueIPCTest::testPortDataConnection() { // This test assumes that there is a data connection mw1 => server => mr1 // Check if connection succeeded both ways: BOOST_CHECK( mw1->connected() ); BOOST_CHECK( mr1->connected() ); double value = 0; // Check if no-data works BOOST_CHECK( !mr1->read(value) ); // Check if writing works (including signalling) ASSERT_PORT_SIGNALLING(mw1->write(1.0), mr1) BOOST_CHECK( mr1->read(value) ); BOOST_CHECK_EQUAL( 1.0, value ); ASSERT_PORT_SIGNALLING(mw1->write(2.0), mr1); BOOST_CHECK( mr1->read(value) ); BOOST_CHECK_EQUAL( 2.0, value ); }
void CorbaTest::testPortDisconnected() { BOOST_CHECK( !mo1->connected() ); BOOST_CHECK( !mi2->connected() ); }
void CorbaMQueueIPCTest::testPortDisconnected() { BOOST_CHECK( !mw1->connected() ); BOOST_CHECK( !mr1->connected() ); }