| Index: webkit/media/buffered_data_source_unittest.cc
|
| diff --git a/webkit/media/buffered_data_source_unittest.cc b/webkit/media/buffered_data_source_unittest.cc
|
| index 98a34d6d5ec6d36587e96d95c9e2842c72f51cef..c4c75ef68be01b64613bd43458aa895cb7720fd8 100644
|
| --- a/webkit/media/buffered_data_source_unittest.cc
|
| +++ b/webkit/media/buffered_data_source_unittest.cc
|
| @@ -16,8 +16,8 @@
|
|
|
| using ::testing::_;
|
| using ::testing::Assign;
|
| +using ::testing::AtLeast;
|
| using ::testing::Invoke;
|
| -using ::testing::StrictMock;
|
| using ::testing::NiceMock;
|
|
|
| using WebKit::WebFrame;
|
| @@ -83,7 +83,6 @@ class BufferedDataSourceTest : public testing::Test {
|
|
|
| data_source_ = new MockBufferedDataSource(message_loop_,
|
| view_->mainFrame());
|
| - data_source_->set_host(&host_);
|
| }
|
|
|
| virtual ~BufferedDataSourceTest() {
|
| @@ -91,6 +90,13 @@ class BufferedDataSourceTest : public testing::Test {
|
| }
|
|
|
| void Initialize(media::PipelineStatus expected) {
|
| + Initialize(expected, true);
|
| + }
|
| +
|
| + void Initialize(media::PipelineStatus expected, bool set_host) {
|
| + if (set_host)
|
| + data_source_->set_host(&host_);
|
| +
|
| ExpectCreateResourceLoader();
|
| data_source_->Initialize(response_generator_.gurl().spec(),
|
| media::NewExpectedStatusCB(expected));
|
| @@ -101,8 +107,10 @@ class BufferedDataSourceTest : public testing::Test {
|
| void InitializeWith206Response() {
|
| Initialize(media::PIPELINE_OK);
|
|
|
| - EXPECT_CALL(host_, SetTotalBytes(response_generator_.content_length()));
|
| - EXPECT_CALL(host_, SetBufferedBytes(0));
|
| + EXPECT_CALL(host_, SetTotalBytes(response_generator_.content_length()))
|
| + .Times(AtLeast(1));
|
| + EXPECT_CALL(host_, SetBufferedBytes(0))
|
| + .Times(AtLeast(1));
|
| Respond(response_generator_.Generate206(0));
|
| }
|
|
|
| @@ -176,7 +184,7 @@ class BufferedDataSourceTest : public testing::Test {
|
| MockWebFrameClient client_;
|
| WebView* view_;
|
|
|
| - StrictMock<media::MockDataSourceHost> host_;
|
| + NiceMock<media::MockDataSourceHost> host_;
|
| MessageLoop* message_loop_;
|
|
|
| private:
|
| @@ -441,8 +449,10 @@ TEST_F(BufferedDataSourceTest, Read) {
|
| ReadAt(0);
|
|
|
| // When the read completes we'll update our network status.
|
| - EXPECT_CALL(host_, SetBufferedBytes(kDataSize));
|
| - EXPECT_CALL(host_, SetNetworkActivity(true));
|
| + EXPECT_CALL(host_, SetBufferedBytes(kDataSize))
|
| + .Times(AtLeast(1));
|
| + EXPECT_CALL(host_, SetNetworkActivity(true))
|
| + .Times(AtLeast(1));
|
| EXPECT_CALL(*this, ReadCallback(kDataSize));
|
| FinishRead();
|
|
|
| @@ -454,4 +464,18 @@ TEST_F(BufferedDataSourceTest, Read) {
|
| Stop();
|
| }
|
|
|
| +// Make sure information regarding loaded data propogates to the host even if it
|
| +// gets initialized before the host is set.
|
| +TEST_F(BufferedDataSourceTest, HostSetAfterResponse) {
|
| + Initialize(media::PIPELINE_OK, false);
|
| + Respond(response_generator_.Generate206(0));
|
| +
|
| + EXPECT_CALL(host_, SetNetworkActivity(_));
|
| + EXPECT_CALL(host_, SetTotalBytes(_));
|
| + EXPECT_CALL(host_, SetBufferedBytes(_));
|
| + data_source_->set_host(&host_);
|
| +
|
| + Stop();
|
| +}
|
| +
|
| } // namespace webkit_media
|
|
|