Index: media/audio/sounds/test_data.cc |
diff --git a/media/audio/sounds/test_data.cc b/media/audio/sounds/test_data.cc |
index dc667c9996d567bed9418ec29edc82394722d933..5420cb173a671cfa81de562965db9070b830e1a6 100644 |
--- a/media/audio/sounds/test_data.cc |
+++ b/media/audio/sounds/test_data.cc |
@@ -13,22 +13,53 @@ TestObserver::TestObserver(const base::Closure& quit) |
: loop_(base::MessageLoop::current()), |
quit_(quit), |
num_play_requests_(0), |
+ num_replays_(0), |
num_stop_requests_(0), |
cursor_(0) { |
DCHECK(loop_); |
} |
-TestObserver::~TestObserver() { |
-} |
+TestObserver::~TestObserver() {} |
void TestObserver::OnPlay() { |
++num_play_requests_; |
} |
+void TestObserver::OnReplay() { |
+ ++num_replays_; |
+} |
+ |
void TestObserver::OnStop(size_t cursor) { |
++num_stop_requests_; |
cursor_ = cursor; |
loop_->PostTask(FROM_HERE, quit_); |
} |
+TestWavReader::TestWavReader(const WavParser& parser) |
+ : parser_(parser), |
+ num_simulate_at_end_requests_(0) {} |
+ |
+TestWavReader::~TestWavReader() {} |
+ |
+bool TestWavReader::AtEnd(size_t /* cursor */) { |
+ if (!num_simulate_at_end_requests_) |
+ return false; |
+ --num_simulate_at_end_requests_; |
+ return true; |
+} |
+ |
+bool TestWavReader::CopyTo(AudioBus* bus, |
+ size_t /* cursor */, |
+ size_t* bytes_written) { |
+ if (!bus) |
+ return false; |
+ bus->Zero(); |
+ *bytes_written = bus->frames() * parser_.bytes_per_frame(); |
+ return true; |
+} |
+ |
+void TestWavReader::SimulateAtEndOnce() { |
+ ++num_simulate_at_end_requests_; |
+} |
+ |
} // namespace media |