Author: mgoulish Date: Fri Sep 14 17:11:09 2012 New Revision: 1384851 URL: http://svn.apache.org/viewvc?rev=1384851&view=rev Log: Jira QPID-4142 auto test for browse-only queues - using messaging interface
Modified: qpid/trunk/qpid/cpp/src/tests/MessagingSessionTests.cpp Modified: qpid/trunk/qpid/cpp/src/tests/MessagingSessionTests.cpp URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/cpp/src/tests/MessagingSessionTests.cpp?rev=1384851&r1=1384850&r2=1384851&view=diff ============================================================================== --- qpid/trunk/qpid/cpp/src/tests/MessagingSessionTests.cpp (original) +++ qpid/trunk/qpid/cpp/src/tests/MessagingSessionTests.cpp Fri Sep 14 17:11:09 2012 @@ -1164,6 +1164,38 @@ QPID_AUTO_TEST_CASE(testAlternateExchang } } +QPID_AUTO_TEST_CASE(testBrowseOnly) +{ + /* Set up a queue browse-only, and try to receive + the same messages twice with two different receivers. + This works because the browse-only queue does not + allow message acquisition. */ + + QueueFixture fix; + std::string addr = "q; {create:always, node:{type:queue, durable:false, x-declare:{arguments:{browse-only:1}}}}"; + Sender sender = fix.session.createSender(addr); + Message out("test-message"); + + int count = 10; + for ( int i = 0; i < count; ++ i ) { + sender.send(out); + } + + Message m; + + Receiver receiver_1 = fix.session.createReceiver(addr); + for ( int i = 0; i < count; ++ i ) { + BOOST_CHECK(receiver_1.fetch(m, Duration::SECOND)); + } + + Receiver receiver_2 = fix.session.createReceiver(addr); + for ( int i = 0; i < count; ++ i ) { + BOOST_CHECK(receiver_2.fetch(m, Duration::SECOND)); + } + + fix.session.acknowledge(); +} + QPID_AUTO_TEST_SUITE_END() }} // namespace qpid::tests --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@qpid.apache.org For additional commands, e-mail: commits-h...@qpid.apache.org