void LinkedHashSetTest::testIsEmpty() { LinkedHashSet<int> set; CPPUNIT_ASSERT_MESSAGE("Empty set returned true", set.isEmpty()); set.add(1); CPPUNIT_ASSERT_MESSAGE("Non-empty set returned true", !set.isEmpty()); CPPUNIT_ASSERT_MESSAGE("Empty set returned false", LinkedHashSet<std::string>().isEmpty()); }
void LinkedHashSetTest::testConstructor() { LinkedHashSet<int> set; CPPUNIT_ASSERT(set.isEmpty()); CPPUNIT_ASSERT_EQUAL(0, set.size()); CPPUNIT_ASSERT_EQUAL(false, set.contains(1)); }
void LinkedHashSetTest::testIterator() { LinkedHashSet<int> set; populateSet(set); Pointer< Iterator<int> > iter(set.iterator()); // Tests that the LinkedHashSet iterates in order of insertion. for (int j = 0; iter->hasNext(); j++) { int value = iter->next(); CPPUNIT_ASSERT_MESSAGE("Incorrect element found", value == j); } { LinkedHashSet<string> set; set.add( "fred1" ); set.add( "fred2" ); set.add( "fred3" ); Iterator<string>* iterator1 = set.iterator(); CPPUNIT_ASSERT( iterator1 != NULL ); CPPUNIT_ASSERT( iterator1->hasNext() == true ); int count = 0; while( iterator1->hasNext() ) { iterator1->next(); ++count; } CPPUNIT_ASSERT( count == set.size() ); Iterator<string>* iterator2 = set.iterator(); while( iterator2->hasNext() ) { iterator2->next(); iterator2->remove(); } CPPUNIT_ASSERT( set.isEmpty() ); delete iterator1; delete iterator2; } }
void OpenwireNonBlockingRedeliveryTest::testNonBlockingMessageDeleiveryIsDelayed() { LinkedHashSet< Pointer<MessageId> > received; const int MSG_COUNT = 100; const std::string destinationName = "testNonBlockingMessageDeleiveryIsDelayed"; destroyDestination(getBrokerURL(), destinationName); Pointer<ActiveMQConnectionFactory> connectionFactory(new ActiveMQConnectionFactory(getBrokerURL())); connectionFactory->getRedeliveryPolicy()->setInitialRedeliveryDelay(TimeUnit::SECONDS.toMillis(10)); Pointer<Connection> connection(connectionFactory->createConnection()); Pointer<Session> session(connection->createSession(Session::SESSION_TRANSACTED)); Pointer<Destination> destination(session->createQueue(destinationName)); Pointer<MessageConsumer> consumer(session->createConsumer(destination.get())); ReceivedListener receivedListener(&received); consumer->setMessageListener(&receivedListener); sendMessages(getBrokerURL(), destinationName, MSG_COUNT); connection->start(); CPPUNIT_ASSERT_MESSAGE("Pre-Rollack received size incorrect", assertTrue(received, MSG_COUNT)); received.clear(); session->rollback(); TimeUnit::SECONDS.sleep(6); CPPUNIT_ASSERT_MESSAGE("Rollback redelivery was not delayed.", received.isEmpty()); CPPUNIT_ASSERT_MESSAGE("Post-Rollack received size incorrect", assertTrue(received, MSG_COUNT)); session->commit(); connection->close(); destroyDestination(getBrokerURL(), destinationName); }