| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051 | #include "SequentialPicker.h"#include <cppunit/extensions/HelperMacros.h>#include "a2functional.h"namespace aria2 {class SequentialPickerTest:public CppUnit::TestFixture {  CPPUNIT_TEST_SUITE(SequentialPickerTest);  CPPUNIT_TEST(testPick);  CPPUNIT_TEST_SUITE_END();public:  void testPick();};CPPUNIT_TEST_SUITE_REGISTRATION(SequentialPickerTest);void SequentialPickerTest::testPick(){  SequentialPicker<int> picker;  CPPUNIT_ASSERT(!picker.isPicked());  CPPUNIT_ASSERT(!picker.hasNext());  CPPUNIT_ASSERT_EQUAL((size_t)0, picker.countEntryInQueue());  picker.pushEntry(make_unique<int>(1));  picker.pushEntry(make_unique<int>(2));  CPPUNIT_ASSERT(picker.hasNext());  CPPUNIT_ASSERT_EQUAL((size_t)2, picker.countEntryInQueue());  picker.pickNext();  CPPUNIT_ASSERT(picker.isPicked());  CPPUNIT_ASSERT_EQUAL(1, *picker.getPickedEntry());  picker.dropPickedEntry();  CPPUNIT_ASSERT(!picker.isPicked());  CPPUNIT_ASSERT(picker.hasNext());  picker.pickNext();  CPPUNIT_ASSERT_EQUAL(2, *picker.getPickedEntry());  CPPUNIT_ASSERT(!picker.hasNext());}} // namespace aria2
 |