Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(101)

Unified Diff: trunk/src/media/filters/video_decoder_selector_unittest.cc

Issue 14320005: Revert 194993 "Remove reference counting from media::VideoDecode..." (Closed) Base URL: svn://svn.chromium.org/chrome/
Patch Set: Created 7 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « trunk/src/media/filters/video_decoder_selector.cc ('k') | trunk/src/media/filters/video_frame_stream.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: trunk/src/media/filters/video_decoder_selector_unittest.cc
===================================================================
--- trunk/src/media/filters/video_decoder_selector_unittest.cc (revision 195011)
+++ trunk/src/media/filters/video_decoder_selector_unittest.cc (working copy)
@@ -18,6 +18,7 @@
using ::testing::NotNull;
using ::testing::Return;
using ::testing::ReturnRef;
+using ::testing::SaveArg;
using ::testing::StrictMock;
namespace media {
@@ -51,17 +52,16 @@
EXPECT_CALL(*demuxer_stream_, type())
.WillRepeatedly(Return(DemuxerStream::VIDEO));
+ }
+ ~VideoDecoderSelectorTest() {
EXPECT_CALL(*decoder_1_, Stop(_))
.WillRepeatedly(RunClosure<0>());
EXPECT_CALL(*decoder_2_, Stop(_))
.WillRepeatedly(RunClosure<0>());
- }
- ~VideoDecoderSelectorTest() {
- if (selected_decoder_) {
+ if (selected_decoder_)
selected_decoder_->Stop(NewExpectedClosure());
- }
message_loop_.RunUntilIdle();
}
@@ -69,16 +69,9 @@
MOCK_METHOD1(OnStatistics, void(const PipelineStatistics&));
MOCK_METHOD1(SetDecryptorReadyCallback, void(const media::DecryptorReadyCB&));
MOCK_METHOD2(OnDecoderSelected,
- void(VideoDecoder*,
+ void(const scoped_refptr<VideoDecoder>&,
const scoped_refptr<DecryptingDemuxerStream>&));
- void MockOnDecoderSelected(
- scoped_ptr<VideoDecoder> decoder,
- const scoped_refptr<DecryptingDemuxerStream>& stream) {
- OnDecoderSelected(decoder.get(), stream);
- selected_decoder_ = decoder.Pass();
- }
-
void UseClearStream() {
EXPECT_CALL(*demuxer_stream_, video_decoder_config())
.WillRepeatedly(ReturnRef(clear_video_config_));
@@ -111,12 +104,12 @@
}
DCHECK_GE(all_decoders_.size(), static_cast<size_t>(num_decoders));
- all_decoders_.erase(
- all_decoders_.begin() + num_decoders, all_decoders_.end());
+ VideoDecoderSelector::VideoDecoderList decoders(
+ all_decoders_.begin(), all_decoders_.begin() + num_decoders);
decoder_selector_.reset(new VideoDecoderSelector(
message_loop_.message_loop_proxy(),
- all_decoders_.Pass(),
+ decoders,
set_decryptor_ready_cb));
}
@@ -125,7 +118,7 @@
demuxer_stream_,
base::Bind(&VideoDecoderSelectorTest::OnStatistics,
base::Unretained(this)),
- base::Bind(&VideoDecoderSelectorTest::MockOnDecoderSelected,
+ base::Bind(&VideoDecoderSelectorTest::OnDecoderSelected,
base::Unretained(this)));
message_loop_.RunUntilIdle();
}
@@ -138,11 +131,11 @@
// Use NiceMock since we don't care about most of calls on the decryptor, e.g.
// RegisterNewKeyCB().
scoped_ptr<NiceMock<MockDecryptor> > decryptor_;
- StrictMock<MockVideoDecoder>* decoder_1_;
- StrictMock<MockVideoDecoder>* decoder_2_;
- ScopedVector<VideoDecoder> all_decoders_;
+ scoped_refptr<StrictMock<MockVideoDecoder> > decoder_1_;
+ scoped_refptr<StrictMock<MockVideoDecoder> > decoder_2_;
+ std::vector<scoped_refptr<VideoDecoder> > all_decoders_;
- scoped_ptr<VideoDecoder> selected_decoder_;
+ scoped_refptr<VideoDecoder> selected_decoder_;
MessageLoop message_loop_;
@@ -169,7 +162,9 @@
EXPECT_CALL(*decoder_1_, Initialize(_, _, _))
.WillOnce(RunCallback<1>(PIPELINE_OK));
- EXPECT_CALL(*this, OnDecoderSelected(decoder_1_, IsNull()));
+ EXPECT_CALL(*this, OnDecoderSelected(scoped_refptr<VideoDecoder>(decoder_1_),
+ IsNull()))
+ .WillOnce(SaveArg<0>(&selected_decoder_));
SelectDecoder();
}
@@ -184,7 +179,9 @@
.WillOnce(RunCallback<1>(DECODER_ERROR_NOT_SUPPORTED));
EXPECT_CALL(*decoder_2_, Initialize(_, _, _))
.WillOnce(RunCallback<1>(PIPELINE_OK));
- EXPECT_CALL(*this, OnDecoderSelected(decoder_2_, IsNull()));
+ EXPECT_CALL(*this, OnDecoderSelected(scoped_refptr<VideoDecoder>(decoder_2_),
+ IsNull()))
+ .WillOnce(SaveArg<0>(&selected_decoder_));
SelectDecoder();
}
@@ -197,7 +194,9 @@
EXPECT_CALL(*decoder_1_, Initialize(_, _, _))
.WillOnce(RunCallback<1>(PIPELINE_OK));
- EXPECT_CALL(*this, OnDecoderSelected(decoder_1_, IsNull()));
+ EXPECT_CALL(*this, OnDecoderSelected(scoped_refptr<VideoDecoder>(decoder_1_),
+ IsNull()))
+ .WillOnce(SaveArg<0>(&selected_decoder_));
SelectDecoder();
}
@@ -231,7 +230,9 @@
EXPECT_CALL(*decoder_1_, Initialize(_, _, _))
.WillOnce(RunCallback<1>(PIPELINE_OK));
- EXPECT_CALL(*this, OnDecoderSelected(decoder_1_, NotNull()));
+ EXPECT_CALL(*this, OnDecoderSelected(scoped_refptr<VideoDecoder>(decoder_1_),
+ NotNull()))
+ .WillOnce(SaveArg<0>(&selected_decoder_));
SelectDecoder();
}
@@ -248,7 +249,9 @@
.WillOnce(RunCallback<1>(DECODER_ERROR_NOT_SUPPORTED));
EXPECT_CALL(*decoder_2_, Initialize(_, _, _))
.WillOnce(RunCallback<1>(PIPELINE_OK));
- EXPECT_CALL(*this, OnDecoderSelected(decoder_2_, NotNull()));
+ EXPECT_CALL(*this, OnDecoderSelected(scoped_refptr<VideoDecoder>(decoder_2_),
+ NotNull()))
+ .WillOnce(SaveArg<0>(&selected_decoder_));
SelectDecoder();
}
@@ -260,7 +263,8 @@
UseEncryptedStream();
InitializeDecoderSelector(kDecryptAndDecode, 1);
- EXPECT_CALL(*this, OnDecoderSelected(NotNull(), IsNull()));
+ EXPECT_CALL(*this, OnDecoderSelected(NotNull(), IsNull()))
+ .WillOnce(SaveArg<0>(&selected_decoder_));
SelectDecoder();
}
« no previous file with comments | « trunk/src/media/filters/video_decoder_selector.cc ('k') | trunk/src/media/filters/video_frame_stream.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698