1 // Copyright 2013 The Chromium Authors. All rights reserved. 2 // Use of this source code is governed by a BSD-style license that can be 3 // found in the LICENSE file. 4 5 #ifndef MEDIA_AUDIO_SOUNDS_TEST_UTILS_H_ 6 #define MEDIA_AUDIO_SOUNDS_TEST_UTILS_H_ 7 8 #include "base/basictypes.h" 9 #include "base/callback.h" 10 #include "base/compiler_specific.h" 11 #include "media/audio/sounds/audio_stream_handler.h" 12 13 namespace base { 14 class MessageLoop; 15 } 16 17 namespace media { 18 19 const int kTestAudioKey = 1000; 20 21 const char kTestAudioData[] = "RIFF\x26\x00\x00\x00WAVEfmt \x10\x00\x00\x00" 22 "\x01\x00\x02\x00\x80\xbb\x00\x00\x00\x77\x01\x00\x02\x00\x10\x00" 23 "data\x04\x00\x00\x00\x01\x00\x01\x00"; 24 25 class TestObserver : public AudioStreamHandler::TestObserver { 26 public: 27 TestObserver(const base::Closure& quit); 28 virtual ~TestObserver(); 29 30 // AudioStreamHandler::TestObserver implementation: 31 virtual void OnPlay() OVERRIDE; 32 virtual void OnStop(size_t cursor) OVERRIDE; 33 34 int num_play_requests() const { return num_play_requests_; } 35 int num_stop_requests() const { return num_stop_requests_; } 36 int cursor() const { return cursor_; } 37 38 private: 39 base::MessageLoop* loop_; 40 base::Closure quit_; 41 42 int num_play_requests_; 43 int num_stop_requests_; 44 int cursor_; 45 46 DISALLOW_COPY_AND_ASSIGN(TestObserver); 47 }; 48 49 } // namespace media 50 51 #endif // MEDIA_AUDIO_SOUNDS_TEST_UTILS_H_ 52