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

Unified Diff: media/base/filter_collection_unittest.cc

Issue 12262058: Revert r180578, r180591, and r180604 from 1410 branch. (Closed) Base URL: svn://svn.chromium.org/chrome/branches/1410/src/
Patch Set: Created 7 years, 10 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 | « media/base/filter_collection.cc ('k') | media/base/mock_filters.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: media/base/filter_collection_unittest.cc
===================================================================
--- media/base/filter_collection_unittest.cc (revision 0)
+++ media/base/filter_collection_unittest.cc (revision 0)
@@ -0,0 +1,64 @@
+// Copyright (c) 2011 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#include "media/base/filter_collection.h"
+#include "media/base/mock_filters.h"
+#include "testing/gtest/include/gtest/gtest.h"
+
+namespace media {
+
+class FilterCollectionTest : public ::testing::Test {
+ public:
+ FilterCollectionTest() {}
+ virtual ~FilterCollectionTest() {}
+
+ protected:
+ FilterCollection collection_;
+
+ DISALLOW_COPY_AND_ASSIGN(FilterCollectionTest);
+};
+
+TEST_F(FilterCollectionTest, SelectXXXMethods) {
+ scoped_refptr<AudioRenderer> audio_renderer;
+
+ collection_.SelectAudioRenderer(&audio_renderer);
+ EXPECT_FALSE(audio_renderer);
+
+ // Add an audio decoder.
+ collection_.AddAudioRenderer(new MockAudioRenderer());
+
+ // Verify that we can select the audio decoder.
+ collection_.SelectAudioRenderer(&audio_renderer);
+ EXPECT_TRUE(audio_renderer);
+
+ // Verify that we can't select it again since only one has been added.
+ collection_.SelectAudioRenderer(&audio_renderer);
+ EXPECT_FALSE(audio_renderer);
+}
+
+TEST_F(FilterCollectionTest, MultipleFiltersOfSameType) {
+ scoped_refptr<AudioRenderer> audio_renderer_a(new MockAudioRenderer());
+ scoped_refptr<AudioRenderer> audio_renderer_b(new MockAudioRenderer());
+
+ scoped_refptr<AudioRenderer> audio_renderer;
+
+ collection_.AddAudioRenderer(audio_renderer_a.get());
+ collection_.AddAudioRenderer(audio_renderer_b.get());
+
+ // Verify that first SelectAudioRenderer() returns audio_renderer_a.
+ collection_.SelectAudioRenderer(&audio_renderer);
+ EXPECT_TRUE(audio_renderer);
+ EXPECT_EQ(audio_renderer, audio_renderer_a);
+
+ // Verify that second SelectAudioRenderer() returns audio_renderer_b.
+ collection_.SelectAudioRenderer(&audio_renderer);
+ EXPECT_TRUE(audio_renderer);
+ EXPECT_EQ(audio_renderer, audio_renderer_b);
+
+ // Verify that third SelectAudioRenderer() returns nothing.
+ collection_.SelectAudioRenderer(&audio_renderer);
+ EXPECT_FALSE(audio_renderer);
+}
+
+} // namespace media
« no previous file with comments | « media/base/filter_collection.cc ('k') | media/base/mock_filters.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698