Index: webkit/glue/media/simple_data_source_unittest.cc |
diff --git a/webkit/glue/media/simple_data_source_unittest.cc b/webkit/glue/media/simple_data_source_unittest.cc |
index 264b68512dd4b61a353afe51cefa76e6b309a7cf..f099826336c7c7b33fe028c5c31cfdd49c900283 100644 |
--- a/webkit/glue/media/simple_data_source_unittest.cc |
+++ b/webkit/glue/media/simple_data_source_unittest.cc |
@@ -2,6 +2,7 @@ |
// Use of this source code is governed by a BSD-style license that can be |
// found in the LICENSE file. |
+#include "base/bind.h" |
#include "media/base/filters.h" |
#include "media/base/mock_callback.h" |
#include "media/base/mock_filter_host.h" |
@@ -64,7 +65,7 @@ class SimpleDataSourceTest : public testing::Test { |
} |
void InitializeDataSource(const char* url, |
- media::MockStatusCallback* callback) { |
+ const media::PipelineStatusCB& callback) { |
gurl_ = GURL(url); |
url_loader_ = new NiceMock<MockWebURLLoader>(); |
@@ -164,21 +165,21 @@ class SimpleDataSourceTest : public testing::Test { |
TEST_F(SimpleDataSourceTest, InitializeHTTP) { |
InitializeDataSource(kHttpUrl, |
- media::NewExpectedStatusCallback(media::PIPELINE_OK)); |
+ media::NewExpectedStatusCB(media::PIPELINE_OK)); |
RequestSucceeded(false); |
DestroyDataSource(); |
} |
TEST_F(SimpleDataSourceTest, InitializeHTTPS) { |
InitializeDataSource(kHttpsUrl, |
- media::NewExpectedStatusCallback(media::PIPELINE_OK)); |
+ media::NewExpectedStatusCB(media::PIPELINE_OK)); |
RequestSucceeded(false); |
DestroyDataSource(); |
} |
TEST_F(SimpleDataSourceTest, InitializeFile) { |
InitializeDataSource(kFileUrl, |
- media::NewExpectedStatusCallback(media::PIPELINE_OK)); |
+ media::NewExpectedStatusCB(media::PIPELINE_OK)); |
RequestSucceeded(true); |
DestroyDataSource(); |
} |
@@ -197,7 +198,7 @@ TEST_F(SimpleDataSourceTest, InitializeData) { |
EXPECT_CALL(host_, SetBufferedBytes(sizeof(kDataUrlDecoded))); |
data_source_->Initialize(kDataUrl, |
- media::NewExpectedStatusCallback(media::PIPELINE_OK)); |
+ media::NewExpectedStatusCB(media::PIPELINE_OK)); |
MessageLoop::current()->RunAllPending(); |
DestroyDataSource(); |
@@ -205,27 +206,29 @@ TEST_F(SimpleDataSourceTest, InitializeData) { |
TEST_F(SimpleDataSourceTest, RequestFailed) { |
InitializeDataSource(kHttpUrl, |
- media::NewExpectedStatusCallback(media::PIPELINE_ERROR_NETWORK)); |
+ media::NewExpectedStatusCB(media::PIPELINE_ERROR_NETWORK)); |
RequestFailed(); |
DestroyDataSource(); |
} |
+static void OnStatusCB(bool* called, media::PipelineStatus status) { |
+ *called = true; |
+} |
+ |
TEST_F(SimpleDataSourceTest, StopWhenDownloading) { |
// The callback should be deleted, but not executed. |
// TODO(scherkus): should this really be the behaviour? Seems strange... |
- StrictMock<media::MockStatusCallback>* callback = |
- new StrictMock<media::MockStatusCallback>(); |
- EXPECT_CALL(*callback, Destructor()); |
- |
- InitializeDataSource(kHttpUrl, callback); |
+ bool was_called = false; |
+ InitializeDataSource(kHttpUrl, base::Bind(&OnStatusCB, &was_called)); |
EXPECT_CALL(*url_loader_, cancel()); |
DestroyDataSource(); |
+ EXPECT_FALSE(was_called); |
} |
TEST_F(SimpleDataSourceTest, AsyncRead) { |
InitializeDataSource(kFileUrl, |
- media::NewExpectedStatusCallback(media::PIPELINE_OK)); |
+ media::NewExpectedStatusCB(media::PIPELINE_OK)); |
RequestSucceeded(true); |
AsyncRead(); |
DestroyDataSource(); |
@@ -237,14 +240,14 @@ TEST_F(SimpleDataSourceTest, AsyncRead) { |
TEST_F(SimpleDataSourceTest, HasSingleOrigin) { |
// Make sure no redirect case works as expected. |
InitializeDataSource(kHttpUrl, |
- media::NewExpectedStatusCallback(media::PIPELINE_OK)); |
+ media::NewExpectedStatusCB(media::PIPELINE_OK)); |
RequestSucceeded(false); |
EXPECT_TRUE(data_source_->HasSingleOrigin()); |
DestroyDataSource(); |
// Test redirect to the same domain. |
InitializeDataSource(kHttpUrl, |
- media::NewExpectedStatusCallback(media::PIPELINE_OK)); |
+ media::NewExpectedStatusCB(media::PIPELINE_OK)); |
Redirect(kHttpRedirectToSameDomainUrl1); |
RequestSucceeded(false); |
EXPECT_TRUE(data_source_->HasSingleOrigin()); |
@@ -252,7 +255,7 @@ TEST_F(SimpleDataSourceTest, HasSingleOrigin) { |
// Test redirect twice to the same domain. |
InitializeDataSource(kHttpUrl, |
- media::NewExpectedStatusCallback(media::PIPELINE_OK)); |
+ media::NewExpectedStatusCB(media::PIPELINE_OK)); |
Redirect(kHttpRedirectToSameDomainUrl1); |
Redirect(kHttpRedirectToSameDomainUrl2); |
RequestSucceeded(false); |
@@ -261,7 +264,7 @@ TEST_F(SimpleDataSourceTest, HasSingleOrigin) { |
// Test redirect to a different domain. |
InitializeDataSource(kHttpUrl, |
- media::NewExpectedStatusCallback(media::PIPELINE_OK)); |
+ media::NewExpectedStatusCB(media::PIPELINE_OK)); |
Redirect(kHttpRedirectToDifferentDomainUrl1); |
RequestSucceeded(false); |
EXPECT_FALSE(data_source_->HasSingleOrigin()); |
@@ -269,7 +272,7 @@ TEST_F(SimpleDataSourceTest, HasSingleOrigin) { |
// Test redirect to the same domain and then to a different domain. |
InitializeDataSource(kHttpUrl, |
- media::NewExpectedStatusCallback(media::PIPELINE_OK)); |
+ media::NewExpectedStatusCB(media::PIPELINE_OK)); |
Redirect(kHttpRedirectToSameDomainUrl1); |
Redirect(kHttpRedirectToDifferentDomainUrl1); |
RequestSucceeded(false); |