Index: src/libchcore/Tests/TWriteBufferQueueWrapperTests.cpp =================================================================== diff -u -N -r518d1a3484cde91ff17c071211df5e40cb3487e3 -rd99302fce795dbb5139659016a5da7948f141fb4 --- src/libchcore/Tests/TWriteBufferQueueWrapperTests.cpp (.../TWriteBufferQueueWrapperTests.cpp) (revision 518d1a3484cde91ff17c071211df5e40cb3487e3) +++ src/libchcore/Tests/TWriteBufferQueueWrapperTests.cpp (.../TWriteBufferQueueWrapperTests.cpp) (revision d99302fce795dbb5139659016a5da7948f141fb4) @@ -10,15 +10,16 @@ TEST(TWriteBufferQueueWrapperTests, ConstructorWithNullParam) { - EXPECT_THROW(TWriteBufferQueueWrapper(nullptr), TCoreException); + EXPECT_THROW(TWriteBufferQueueWrapper(nullptr, 0, nullptr), TCoreException); } TEST(TWriteBufferQueueWrapperTests, Constructor) { TBufferListPtr spEmptyBuffers(std::make_shared()); TOrderedBufferQueuePtr spQueue(std::make_shared(spEmptyBuffers, 0)); - TWriteBufferQueueWrapper queue(spQueue); + TSharedCountPtr spOtfBufferCount(std::make_shared>()); + TWriteBufferQueueWrapper queue(spQueue, 1, spOtfBufferCount); EXPECT_EQ(0, queue.GetCount()); EXPECT_TIMEOUT(queue.GetHasBuffersEvent()); } @@ -28,7 +29,8 @@ TBufferListPtr spEmptyBuffers(std::make_shared()); TOrderedBufferQueuePtr spQueue(std::make_shared(spEmptyBuffers, 0)); - TWriteBufferQueueWrapper queue(spQueue); + TSharedCountPtr spOtfBufferCount(std::make_shared>()); + TWriteBufferQueueWrapper queue(spQueue, 1, spOtfBufferCount); EXPECT_EQ(nullptr, queue.Pop()); } @@ -56,7 +58,8 @@ spQueue->Push(&buffer3); spQueue->Push(&buffer4); - TWriteBufferQueueWrapper queue(spQueue); + TSharedCountPtr spOtfBufferCount(std::make_shared>()); + TWriteBufferQueueWrapper queue(spQueue, 1, spOtfBufferCount); EXPECT_EQ(&buffer1, queue.Pop()); EXPECT_EQ(0, buffer1.GetFilePosition()); @@ -82,7 +85,8 @@ TBufferListPtr spEmptyBuffers(std::make_shared()); TOrderedBufferQueuePtr spQueue(std::make_shared(spEmptyBuffers, 0)); - TWriteBufferQueueWrapper queue(spQueue); + TSharedCountPtr spOtfBufferCount(std::make_shared>()); + TWriteBufferQueueWrapper queue(spQueue, 1, spOtfBufferCount); TOverlappedDataBuffer buffer1(1024, nullptr); buffer1.SetFilePosition(0); @@ -141,7 +145,8 @@ spQueue->Push(&buffer1); spQueue->Push(&buffer2); - TWriteBufferQueueWrapper queue(spQueue); + TSharedCountPtr spOtfBufferCount(std::make_shared>()); + TWriteBufferQueueWrapper queue(spQueue, 1, spOtfBufferCount); TOverlappedDataBuffer buffer3(1024, nullptr); buffer3.SetFilePosition(2000); @@ -153,16 +158,6 @@ queue.Push(&buffer4); EXPECT_SIGNALED(queue.GetHasBuffersEvent()); - EXPECT_EQ(&buffer1, queue.Pop()); - EXPECT_EQ(0, buffer1.GetFilePosition()); - EXPECT_EQ(1000, buffer1.GetRequestedDataSize()); - - EXPECT_SIGNALED(queue.GetHasBuffersEvent()); - EXPECT_EQ(&buffer2, queue.Pop()); - EXPECT_EQ(1000, buffer2.GetFilePosition()); - EXPECT_EQ(1000, buffer2.GetRequestedDataSize()); - - EXPECT_SIGNALED(queue.GetHasBuffersEvent()); EXPECT_EQ(&buffer3, queue.Pop()); EXPECT_EQ(2000, buffer3.GetFilePosition()); EXPECT_EQ(1000, buffer3.GetRequestedDataSize()); @@ -172,6 +167,16 @@ EXPECT_EQ(3000, buffer4.GetFilePosition()); EXPECT_EQ(1000, buffer4.GetRequestedDataSize()); + EXPECT_SIGNALED(queue.GetHasBuffersEvent()); + EXPECT_EQ(&buffer1, queue.Pop()); + EXPECT_EQ(0, buffer1.GetFilePosition()); + EXPECT_EQ(1000, buffer1.GetRequestedDataSize()); + + EXPECT_SIGNALED(queue.GetHasBuffersEvent()); + EXPECT_EQ(&buffer2, queue.Pop()); + EXPECT_EQ(1000, buffer2.GetFilePosition()); + EXPECT_EQ(1000, buffer2.GetRequestedDataSize()); + EXPECT_TIMEOUT(queue.GetHasBuffersEvent()); EXPECT_EQ(nullptr, queue.Pop()); }