summaryrefslogtreecommitdiffstats
path: root/media/base/mock_filters.cc
diff options
context:
space:
mode:
authorfischman@chromium.org <fischman@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-03-16 16:57:02 +0000
committerfischman@chromium.org <fischman@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-03-16 16:57:02 +0000
commita9590c25660d4be4caad2add5e16e08003e5ed39 (patch)
tree10b2dd0b18e9122aa0eb86d80e14c8e3efafd73e /media/base/mock_filters.cc
parentbac2d4979f97026ed1344cd2dc9b208f58886537 (diff)
downloadchromium_src-a9590c25660d4be4caad2add5e16e08003e5ed39.zip
chromium_src-a9590c25660d4be4caad2add5e16e08003e5ed39.tar.gz
chromium_src-a9590c25660d4be4caad2add5e16e08003e5ed39.tar.bz2
PipelineError is dead. Long live PipelineStatus!
PipelineError was a poor naming choice because most of the time variables of that type held the value PIPELINE_OK meaning there was in fact no error. Replaced the idiom of [0-ary callback + GetError()] with [1-ary callback taking PipelineStatus argument] which makes the Pipeline API cleaner and less error-prone. Before, consumers of the API had to make sure to call GetError() at the top of each callback, or risk missing state transitions in the pipeline. Now each callback gets an explicit parameter holding the pipeline status at the moment the callback was invoked so failing to handle error conditions should be more apparent in the code. BUG=none TEST=media_unittests + trybots: {mac,linux,win}{_layout,}, linux_rel, linux_clang (all pass or fail with unrelated errors) Review URL: http://codereview.chromium.org/6686061 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@78379 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'media/base/mock_filters.cc')
-rw-r--r--media/base/mock_filters.cc20
1 files changed, 11 insertions, 9 deletions
diff --git a/media/base/mock_filters.cc b/media/base/mock_filters.cc
index fbf2bb1..5fc5b55 100644
--- a/media/base/mock_filters.cc
+++ b/media/base/mock_filters.cc
@@ -4,6 +4,7 @@
#include "media/base/mock_filters.h"
+#include "base/logging.h"
#include "media/base/filter_host.h"
using ::testing::_;
@@ -36,13 +37,14 @@ void MockDataSource::SetTotalAndBufferedBytes(int64 total_bytes,
}
MockDemuxerFactory::MockDemuxerFactory(MockDemuxer* demuxer)
- : demuxer_(demuxer), error_(PIPELINE_OK) {
+ : demuxer_(demuxer), status_(PIPELINE_OK) {
}
MockDemuxerFactory::~MockDemuxerFactory() {}
-void MockDemuxerFactory::SetError(PipelineError error) {
- error_ = error;
+void MockDemuxerFactory::SetError(PipelineStatus error) {
+ DCHECK_NE(error, PIPELINE_OK);
+ status_ = error;
}
void MockDemuxerFactory::RunBuildCallback(const std::string& url,
@@ -58,12 +60,12 @@ void MockDemuxerFactory::RunBuildCallback(const std::string& url,
scoped_refptr<MockDemuxer> demuxer = demuxer_;
demuxer_ = NULL;
- if (error_ == PIPELINE_OK) {
+ if (status_ == PIPELINE_OK) {
cb->Run(PIPELINE_OK, demuxer.get());
return;
}
- cb->Run(error_, static_cast<Demuxer*>(NULL));
+ cb->Run(status_, static_cast<Demuxer*>(NULL));
}
void MockDemuxerFactory::DestroyBuildCallback(const std::string& url,
@@ -133,14 +135,14 @@ MockFilterCollection::~MockFilterCollection() {}
FilterCollection* MockFilterCollection::filter_collection(
bool include_demuxer,
bool run_build_callback,
- PipelineError build_error) const {
+ PipelineStatus build_status) const {
FilterCollection* collection = new FilterCollection();
MockDemuxerFactory* demuxer_factory =
new MockDemuxerFactory(include_demuxer ? demuxer_ : NULL);
- if (build_error != PIPELINE_OK)
- demuxer_factory->SetError(build_error);
+ if (build_status != PIPELINE_OK)
+ demuxer_factory->SetError(build_status);
if (run_build_callback) {
ON_CALL(*demuxer_factory, Build(_, NotNull())).WillByDefault(Invoke(
@@ -165,7 +167,7 @@ void RunFilterCallback(::testing::Unused, FilterCallback* callback) {
}
void RunPipelineStatusCallback(
- PipelineError status, PipelineStatusCallback* callback) {
+ PipelineStatus status, PipelineStatusCallback* callback) {
callback->Run(status);
delete callback;
}